Journald
Dash が新機能を発表!インシデントマネジメント、Continuous Profiler など多数の機能が追加されました! Dash イベントで発表された新機能!

Journald

Agent Check Agentチェック

Supported OS: Linux

概要

Systemd-journald は、ログデータを収集して保管するシステムサービスです。さまざまなソースから受け取ったログ情報に基づいて、構造化およびインデックス化されたジャーナルを作成し、維持します。

セットアップ

インストール

ジャーナルファイルは、デフォルトでは、systemd-journal システムグループによって所有され、読み取られます。ジャーナルログの収集を開始するには、以下のようにします。

  1. ジャーナルを実行しているインスタンスに Agent をインストールします
  2. 以下を実行して、systemd-journal グループに dd-agent ユーザーを追加します。

    usermod -a -G systemd-journal dd-agent

コンフィギュレーション

ホストで実行中の Agent に対してこのチェックを構成するには:

Agent のディレクトリのルートにある Agent の conf.d/ フォルダー内の journald.d/conf.yaml ファイルを編集します。

ログの収集

Agent バージョン 6.0 以降で利用可能

Datadog Agent で、ログの収集はデフォルトで無効になっています。以下のように、datadog.yaml でこれを有効にする必要があります。

logs_enabled: true

ログの収集を開始するには、次の構成ブロックを journald.d/conf.yaml ファイルに追加します。

logs:
    - type: journald
      container_mode: true

source および service 属性の値を埋めるために、Agent は SYSLOG_IDENTIFIER_SYSTEMD_UNIT_COMM を収集し、最初に検出した空でない値に設定します。インテグレーションのパイプラインを活用するため、Datadog は systemd サービスファイルまたは systemd サービスオーバーライドファイルに SyslogIdentifier パラメーターを直接設定することをおすすめしています。これらの場所はお使いのディストリビューションにより異なりますが、systemctl show -p FragmentPath <unit_name> コマンドを使って systemd サービスファイルの場所を検索することができます。

: Agent 7.17 以降では、container_modetrue に設定されている場合、Docker コンテナに基づいてログのデフォルトの動作変更が行われます。ログの source 属性は、単に docker ではなく、対応するコンテナの短いイメージ名に自動的に設定されます。

最後に、Agent を再起動します。

コンテナ環境の場合は、オートディスカバリーのインテグレーションテンプレートのガイドを参照して、次のパラメーターを適用してください。

ログの収集

Agent バージョン 6.0 以降で利用可能

Datadog Agent で、ログの収集はデフォルトで無効になっています。有効にする方法については、Kubernetes ログ収集のドキュメントを参照してください。

パラメーター
<LOG_CONFIG>{"source": "journald", "service": "<YOUR_APP_NAME>"}

高度な機能

ジャーナルの場所の変更

Agent は、デフォルトで次の場所でジャーナルを探します。

  • /var/log/journal
  • /var/run/journal

ジャーナルがこれ以外の場所にある場合は、path パラメーターに、対応するジャーナルのパスを追加します。

ジャーナルユニットの絞り込み

以下のパラメーターを使用して、特定のユニットに絞り込んだり除外することができます。

  • include_units: 指定されたすべてのユニットを含めます。
  • exclude_units: 指定されたすべてのユニットを除外します。

例:

logs:
    - type: journald
      path: /var/log/journal/
      include_units:
          - docker.service
          - sshd.service
コンテナタグの収集

高度に動的なコンテナ環境において情報を見つける際にタグは重要です。Agent が journald ログからコンテナタグを収集できる理由はここにあります。

Agent がホストから実行されている場合、これは自動的に機能します。Datadog Agent のコンテナバージョンを使用している場合は、ジャーナルパスと次のファイルをマウントしてください。

  • /etc/machine-id: これで、Agent は、ホストに格納されたジャーナルに確実に問い合わせることができます。

トラブルシューティング

ご不明な点は、Datadog のサポートチームまでお問い合わせください。

その他の参考資料

お役に立つドキュメント、リンクや記事: