67

Linux 用に作成されたプログラムがあり、MacOS 10.5 マシンでビルドして実行しようとしています。プログラムは問題なくビルドおよび実行されますが、syslog に対して多くの呼び出しが行われます。Mac で syslogd が実行されていることはわかっていますが、syslog 呼び出しの出力先がわかりません。

syslog 呼び出しの形式は次のとおりです。

syslog (LOG_WARNING, "Log message");

ログ出力を見つける場所はありますか?

4

8 に答える 8

72

/var/log/system.log

を使用して簡単に監視できますtail -f /var/log/system.log

「ロガー」 ( man logger) および「syslog」 ( man syslog) も参照してください。

于 2013-01-24T16:14:50.150 に答える
56

ログファイルを表示するには、おそらくConsole.appを使用する必要があります。パーディです。

左側でデバイスを選択し、右側でメッセージをフィルタリングします。

ここに画像の説明を入力してください

于 2008-12-19T05:56:17.143 に答える
13

疑わしい場合は、常にありman syslogます。

あなたはであなたのメッセージを見つけることができます/var/log/syslog; 私のマシンは、高レベルのメッセージのみを含むように箱から出して設定されているため、設定が必要になる場合があります。

syslog(1)を介してメッセージを読み取ることも、次のようなコマンドを使用してテストメッセージを作成することもできます。

$ syslog -s -l INFO "Hello, world."

重大度P(「パニック」)を使用すると、コンソールにエキサイティングなメッセージがすぐに表示されます。

于 2008-12-19T05:46:17.523 に答える
11

Mac OS Xは、syslog の機能のスーパーセットを実装しています。syslog はすべて存在しますが、ASL の一部として存在します。

Matthew Schinckel の回答で言及されているコンソールは、ASL の GUI です。サイドバーにリストされたクエリによって取得された、データベースに存在するすべてのメッセージが表示されます。デフォルトでは 2 つのクエリがあります。1 つはコンソール機能 (特に で使用されるNSLog) で送信されたメッセージのみを表示し、もう 1 つはすべてのログ メッセージを表示します。全メッセージ クエリを確認します。そこにあなたのメッセージがきっと見つかるはずです。

その「すべて」にはアスタリスクが付いています。/etc/asl.conf を見ると、次の行が表示されます。

# save everything from emergency to notice
? [<= Level notice] store

幸いなことに、あなたの場合、メッセージはこのチェックに合格します。

于 2010-01-03T13:29:39.413 に答える
1

チャーリーの答えに基づいて、のマンページを確認しsyslog.conf(5)、ファイル/etc/syslog.conf(syslog構成がデフォルトで定義されている場所であり、OS Xでも確認できる)を確認する必要があることを付け加えたいと思います。 10.5.x)。

于 2008-12-19T06:22:35.983 に答える
0

openlogプログラム内のどこかへの呼び出しを確認します。を呼び出した後、openlogsyslogその出力を既定の場所ではなく、そのログ ファイルに保存します。

于 2010-01-03T13:30:39.367 に答える