主に以下のログが収集されます。
- システムのログ
- カーネルのログ
- サービスのログ
- ログインユーザーのログ
- セキュリティのログ
- cron のログ
初めに
本記事は Linux の基本シリーズの5回目です。そのほかの記事は以下のとおりです。
- 【Linux の基本1】初心者向け Linux コマンドの一覧
- 【Linux の基本2】ファイルシステム階層標準
- 【Linux の基本3】パッケージ管理システム (yum)
- 【Linux の基本4】init システム (systemd)
- 【Linux の基本5】ロギング (systemd-journald) ←イマココ
また、Linux のカーネルに関する記事一覧は以下のとおりです。
- 【Linux カーネル: OS 入門1】OS、カーネルとは
- 【Linux カーネル: OS 入門2】CPU・プロセス管理
- 【Linux カーネル: OS 入門3】メモリ管理
- 【Linux カーネル: OS 入門4】ストレージ管理・ファイルシステム
- 【Linux カーネル: OS 入門5】ファイルシステムの機能一覧
- 【Linux カーネル: OS 入門6】I/O デバイス管理
journald と rsyslog の違い
jounald と rsyslog の違いは以下のとおりです。
journald | rsyslog | |
---|---|---|
対応 OS | CentOS 7 以降 | CentOS 6 以前でも (CentOS 7 以降は jounald から rsyslog に syslog を転送) |
用途 | ログの収集・保存 | 監視のソフトウェアがレガシーな rsyslog にしか対応してない場合 |
基本的に journald だけ使えば OK です。
Journal は systemd のコンポーネントで、ログファイルの表示および管理を担います。
https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/7/html/system_administrators_guide/s1-using_the_journalrsyslogd
などの従来の syslog デーモンとの並列もしくはその代わりとして使用できます
journald の使い方
journal ログにアクセスするには、jounalctl コマンドを利用します。
-- Logs begin at Thu 2013-08-01 15:42:12 CEST, end at Thu 2013-08-01 15:48:48 CEST. -- Aug 01 15:42:12 localhost systemd-journal[54]: Allowing runtime journal files to grow to 49.7M. Aug 01 15:42:12 localhost kernel: Initializing cgroup subsys cpuset Aug 01 15:42:12 localhost kernel: Initializing cgroup subsys cpu
jounalctl のオプション
このままだと全ての journal ログが表示されるので、オプションを利用します。
-e 最新部分を表示
古い情報を辿る時は b キーを入力します。
似たようオプションに -r があります。これはログを下から表示します。
-x 追加の情報
詳細なログを確認できます。
-u ユニット (サービス) を指定
nginx のログだけを見たい場合は以下
-o verbose ログの全情報
_UID 指定したユーザーID
logger 任意のログを生成
journal ログを検証する場合、任意のログを生成したくなります。
そんな時は logger コマンドを利用します。
5月 21 14:33:39 xxxx user[xxxx]: test log
jounald の設定
jounald の設定ファイルは /etc/systemd/journald.conf です。
特によく利用する設定は以下です。
ログの保存先
#Storage=auto
Storage の値 | 説明 |
---|---|
auto | /var/log/journal ディレクトリの有無によって変化 ・ある: /var/log/journal 配下に保存 ・ない: /run/log/journal 配下に保存 |
persistent | /var/log/journal 配下に保存 |
volatile | /run/log/journal 配下に保存 |
ログのサイズ上限
journal ログがストレージから溢れないように、上限を設定します。
#SystemMaxUse=
SystemMaxUse= and RuntimeMaxUse= control how much disk space the journal may use up at most.
The first pair defaults to 10% (中略) of the size of the respective file system, but each value is capped to 4G.
https://www.freedesktop.org/software/systemd/man/journald.conf.html
関連する記事
Linux の基本に関する記事一覧
- 【Linux の基本1】初心者向け Linux コマンドの一覧
- 【Linux の基本2】ファイルシステム階層標準
- 【Linux の基本3】パッケージ管理システム (yum)
- 【Linux の基本4】init システム (systemd)
- 【Linux の基本5】ロギング (systemd-journald) ←イマココ
Linux のカーネルに関する記事一覧
- 【Linux カーネル: OS 入門1】OS、カーネルとは
- 【Linux カーネル: OS 入門2】CPU・プロセス管理
- 【Linux カーネル: OS 入門3】メモリ管理
- 【Linux カーネル: OS 入門4】ストレージ管理・ファイルシステム
- 【Linux カーネル: OS 入門5】ファイルシステムの機能一覧
- 【Linux カーネル: OS 入門6】I/O デバイス管理
参考サイト
