システム ジャーナルの使用
デフォルトで、新しい systemd ベースの Linux システムは、システム ログに 2 つのロギング サービスを使用するようになりました:
- systemd-journald 、ログのみをメモリに保持するように構成されています
rsyslogd 、systemd-journald (およびその他) によって送信されたメッセージを取得し、ディスクに保存します。
システム ジャーナルのメッセージを表示するには、journalctl というツールを使用します に使える。パラメータなしで使用すると、システム ジャーナルの全内容がページャーに表示されます (デフォルトでは less) 使用されている)。オプションとフィルターの両方を使用して、journalctl の出力を変更できます。オプションを使用して、表示される行数を変更したり、フォロー モードをオンにしたり、表示フィールドを変更したり、時間範囲を指定したりできます。フィルターを使用して、表示するサービスとユニットの情報、表示する実行可能ファイルを変更できます。など
journalctl の例
journalctl -ef
日誌の最後にジャンプ (-e 、フォロー モードを有効にします (-f )。これにより、ジャーナルが画面上で開いたままになり、新着メッセージが表示されます。
# journalctl -ef
journalctl _SYSTEMD_UNIT=sshd.service
これにより、sshd.service によって生成されたすべてのメッセージが表示されます systemd ユニット。
# journalctl _SYSTEMD_UNIT=sshd.service
journalctl -u sshd.service
これにより、sshd.service systemd ユニットによって生成されたすべてのメッセージが表示されます。
# journalctl -u sshd.service
journalctl -p emerg..err
emerg から err までの範囲の優先度を持つジャーナル内のすべてのメッセージを表示します。
# journalctl -p emerg..err
-p err のように単一の優先度が指定されている場合 、そのレベルまでのすべてのメッセージが表示されます。
# journalctl -p err
journalctl -b -1
最後のシステム起動からのメッセージのみを表示します。これは、システム クラッシュに関する情報を検索するのに役立ちます。これには、永続的なジャーナルを構成する必要があります。
# journalctl -b -1
journalctl –「2015-02-02 20:30:00」から「2015-03-31 12:00:00」まで
2 月 2 日の夜 8 時半から 3 月 31 日の正午までのすべてのメッセージを表示します。これには、永続的なジャーナルを構成する必要があります。
# journalctl --since "2015-02-02 20:30:00" --until "2015-03-31 12:00:00"
journalctl -o 詳細
詳細出力モードを使用します (-o verbose )。これにより、ジャーナルに保存されているすべてのフィールドが、フィールド名と内容とともに表示されます。すべてのフィールド名は、journalctl コマンド ラインでフィルターとして使用できます。
# journalctl -o verbose
オプションとフィルタの完全なリストについては、journalctl(1) のマニュアル ページを参照してください。
# man journalctl
ジャーナルの永続化
デフォルトでは、CentOS/RHEL 7 はシステム ジャーナルを /run/log/journal に保存します。 、tmpfs に保存されます .これは、再起動すると、保存されているすべての情報が失われることを意味します。ディレクトリ /var/log/journal が存在する場合、ジャーナルはそこに保存されるため、再起動後も永続的なジャーナルが有効になります。
永続的なジャーナルを有効にするには、次の手順を使用します:
1. ディレクトリ /var/log/journal を作成します .
# mkdir /var/log/journal
2. 新しいディレクトリのグループ所有権を systemd-journal に設定します 、および 2755 へのアクセス許可 .
# chown root:systemd-journal /var/log/journal # chmod 2755 /var/log/journal
3. USR1 を送信して、新しい場所を使用する必要があることを systemd-journald に通知します。 それに信号を送る。再起動でも十分です。
# killall -USR1 systemd-journald
詳細情報の有効化
多くのツールやサービスは、さまざまな構成オプションやコマンドライン フラグを使用して、実行するログの量や、コマンド ラインから実行したときに表示される情報の量を増やすことができます。
通常、コマンドライン オプションには -v が含まれています。これは、冗長性を高めるために複数回指定できる場合もあれば、使用できる –debug オプションを含む場合もあります。サービスには通常、メインの構成ファイルまたは /etc/sysconfig/SERVICENAME のいずれかに構成オプションがあります。 、ログレベルや詳細度を上げるためにも使用できます。これらの個々のサービスのドキュメントを参照して、詳細度とログ レベルを上げてください。
注意 :/etc/sysconfig/SERVICENAME 内のサービスに対してデバッグ オプションを使用すると、そのオプションによって、デーモンがターミナルから切断されなくなることがあります。そのようなサービスが systemctl を使用して開始され、サービス タイプが forking に設定されている場合、systemctl コマンドは、Ctrl+C を押してサービスを強制終了するまで戻りません。このような場合、コマンド ラインからサービスを手動で実行することもできます。