アットウィキロゴ

ログの仕組み

ログの仕組み

  • Linuxで取得できる情報
OSやユーザープロセスの稼働に関するもの
ハードウェア関連の構成に関するもの
ハードウェアの稼働に関する情報はBIOSから直接取得
IA(Intel Architecture)系ハードウェアでよく見られる管理プロセッサ(システムやハードウェアを監視する専用のプロセッサ)を通しても取得
  • ロギングの流れ
図4 ロギングシステムの相関図
  • カーネルメッセージ
printk()関数を呼び出すことで出力されるメッセージ
  • printk()
ログレベルを付加してリングバッファに格納
  • klogd
リングバッファ経由でカーネルメッセージを取得
syslogdへと送信する
コンソールログレベルよりも小さければコンソールにメッセージを出力

コンソールログレベルの設定

  • cat /proc/sys/kernel/printk
4       4       1       7
  • klogd -c <コンソールログレベル>
  • dmesg -n <コンソールログレベル>

dmesgコマンド

リングバッファから任意にカーネルメッセージを取り出す
デフォルトではリングバッファから最大16Kバイト分のメッセージしか読み取らない
dmesg -s 262144  ->256Kバイト分のメッセージ
  • /var/log/dmesgファイル
起動スクリプト中で、dmesg -s 131072 > /var/log/dmesg と記述されているに過ぎない

rsyslog

  • /etc/rsyslog.conf
<facility>.<priority> <ログの配送先>
facilityとpriority
/usr/include/sys/syslog.h
  • ユーザープロセスからsyslogにメッセージを送る
openlog()、syslog()、closelog()関数を使用
  • シェルスクリプト
loggerコマンド
最終更新:2012年02月20日 01:40
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。