Cでは、次のようにログを記録します。
syslog( LOG_INFO, "proxying %s", url );
Linuxでログを確認するにはどうすればよいですか?
Cでは、次のようにログを記録します。
syslog( LOG_INFO, "proxying %s", url );
Linuxでログを確認するにはどうすればよいですか?
回答:
どうless /var/log/syslog
ですか?
/etc/syslog.conf
tail -f /var/log/syslog
これは、syslogに入るときに最新の出力を表示するため、非常に便利です。厳密に過去のものを調べるのではなく、ライブで何かをトラブルシューティングしようとしている場合に役立ちます。
Fedora 19では、答えは/var/log/messages
です。/etc/rsyslog.conf
変更されているか確認してください。
デフォルトでは/var/log/syslog
、でシステムログにログインしているため、次のユーザーが読み取ることができます。
tail -f /var/log/syslog
ファイルが存在しない場合は/etc/syslog.conf
、syslogdの構成ファイルを確認してください。構成ファイルは異なる可能性があることに注意してください。異なるファイルを使用している場合は、実行中のプロセスを確認してください。
# ps wuax | grep syslog
root /sbin/syslogd -f /etc/syslog-knoppix.conf
注:すべてのメッセージをログに記録(なKnoppixのような)いくつかのディストリビューションでは、別の端末(例えばに送ることができる/dev/tty12
例えばのでアクセスに、)tty12
を押してみてくださいControl+ Alt+ F12。
lsof
ツールを使用して、syslogd
プロセスが使用しているログファイルを見つけることもできます。
sudo lsof -p $(pgrep syslog) | grep log$
テストメッセージをシェルのsyslogdに送信するには、次のことを試してください。
echo test | logger
トラブルシューティングには、トレースツール(strace
Linux、dtruss
Unix)を使用します。例:
sudo strace -fp $(cat /var/run/syslogd.pid)
Vimが好きな場合は、syslogファイルの構文強調表示が組み込まれています。たとえば、エラーメッセージが赤で強調表示されます。
vi +'syntax on' /var/log/syslog
syslog
書き込みませんか?(カーネルメッセージリングバッファにアクセスするための下位レベルのものについて話している場合を除きますurl
が、疑わしいですint
。)