オープンソース

一覧へ

5. ログの受信設定をするには(Input設定)

Graylogは、様々な形式のログを受け取るために、受信の設定が必要です。 ログの受信設定は以下のように行ないます。

5.1. Input設定

メニューからinputsの画面に遷移します。

GraylogのInputs設定への遷移

Select input の中から利用するログフォーマットを選択します。

GraylogのInputs設定ログフォーマットの選択

選択可能なフォーマットは以下の通りです。

  • AWS CloudTrail
  • AWS Kinesis/CloudWatch
  • Beats
  • Beats (deprecated)
  • CEF AMQP
  • CEF Kafka
  • CEF TCP
  • CEF UDP
  • GELF AMQP
  • GELF HTTP
  • GELF Kafka
  • GELF TCP
  • GELF UDP
  • IPFIX UDP
  • JSON path value from HTTP API
  • NetFlow UDP
  • Palo Alto Networks TCP(PAN-OS v8.x)
  • Palo Alto Networks TCP(PAN-OS v9+)
  • Random HTTP message generator
  • Raw/Plaintext AMQP
  • Raw/Plaintext Kafka
  • Raw/Plaintext TCP
  • Raw/Plaintext UDP
  • Syslog AMQP
  • Syslog Kafka
  • Syslog TCP
  • Syslog UDP

5.2. Syslogサーバ(UDP)のInput設定

Syslog UDPを選択し、Launch new input をクリックすると以下の画面が表示されます。

GraylogのInputs設定SyslogUDPの選択

それぞれの項目の意味は以下の通りです。

  • Global
    • チェックすると、全てのGraylogノードでこのinput設定を有効化する
  • Node
    • このinput設定を有効にするGraylogノードを選択する
  • Title
    • このinput設定の名前の入力フォーム
  • Bind address
    • SyslogサーバがリッスンするIPアドレス
  • Port
    • Syslogサーバがリッスンするポート

Note

Graylogがrootユーザで動作していない場合、514ポートではリッスンできません。10514など、一般ユーザでもリッスンできるポートを指定してください。

  • Receive Buffer Size(optional)
    • ネットワークの受信バッファサイズを指定する
    • 単位はbyte

Note

このサイズを増やすためには、net.core.rmem_maxなどのカーネルパラメータの調整が必要な可能性があります。

  • No. of worker threads(optional)
    • ネットワーク接続を処理するスレッド数を指定する
  • Override source(optional)
    • sourceフィールドを強制的に上書きする値を設定するフォーム
    • 通常sourceフィールドにはログの送信元が記録される
  • Encoding(optional)
    • 文字エンコーディングを指定する
  • Force rDNS?
    • ログの送信元のホスト名を逆引き解決してsourceフィールドに格納する

Note

この設定を有効化すると、DNSのトラフィックが増加する可能性があります。また別の設定でDNSのログを取得している場合、ログがループする可能性があります。

  • Allow overriding date?
    • 有効にした場合、ログから日付情報が取得できない場合に、現在の日付をtimestampフィールドに保存する
  • Store full message
    • 有効にした場合、Syslogで送信されたログをそのままfull_messageフィールドに保存する
    • 通常、ログメッセージはmessageフィールドに保存される。その際、時間情報や送信元の情報は、timestampやsourceフィールドに保存され、messageフィールドには含まれない。
  • Expand structured data?
    • 有効にした場合、RFC5424で定義された構造化されたデータを分解して保存する
  • Time Zone(optional)
    • タイムゾーンを設定する

設定を行い Launch Input を押すと、新しいInputの情報が登録されます。

GraylogのInputs設定SyslogUDPの設定

この設定で、GraylogはSyslogサーバとして動作しているため、指定したIPアドレス/ポート番号でログを受け取ることができます。

5.3. GELF HTTPのInput設定

5.3.1. GELFとは

GELFは、Graylog Extended Log Formatの省略形です。 このログフォーマットは、JSONを拡張したGraylog独自のログフォーマットです。 Syslogなどに代表される従来のログは、ログの情報が構造化されていませんでした。 GELFは、ログを構造化して送信することで、検索や可視化などで利用しやすい形で保存しておくことを目的としてます。

GELFフォーマットの例:

{
"version": "1.1",
"host": "example.org",
"short_message": "A short message that helps you identify what is going on",
"full_message": "Backtrace here\n\nmore stuff",
"timestamp": 1385053862.3072,
"level": 1,
"_user_id": 9001,
"_some_info": "foo",
"_some_env_var": "bar"
}

GELFフォーマットの詳細はGELFの章を参照してください。

5.3.2. GELF HTTPの設定

GELF HTTPを選択し、Launch new input をクリックすると以下の画面が表示されます。

GraylogのInputs設定GELEHTTPの選択

それぞれの項目の意味は以下の通りです。

  • Global
    • チェックすると、全てのGraylogノードでこのinput設定を有効化する
  • Node
    • このinput設定を有効にするGraylogノードを選択する
  • Title
    • このinput設定の名前の入力フォーム
  • Bind address
    • GELF HTTPサーバがリッスンするIPアドレス
  • Port
    • GELF HTTPサーバがリッスンするポート
  • Receive Buffer Size(optional)
    • ネットワークの受信バッファサイズを指定する

Note

このサイズを増やすためには、net.core.rmem_maxなどのカーネルパラメータの調整が必要な可能性があります。

  • No. of worker threads(optional)
    • ネットワーク接続を処理するスレッド数を指定する
  • TLS cert file(optional)
    • TLS証明書ファイルのパスを指定する
  • TLS private key file(optional)
    • TLSプライベート鍵ファイルのパスを指定する
  • Enable TLS
    • チェックした場合、TLS接続を有効化する
  • TLS key password(optional)
    • TLS鍵のパスフレーズを指定する
  • TLS client authentication (optional)
    • クライアント認証ポリシーを設定する
    • disable/optional/requiredから選択する
      • disable: CA証明書の検証を行わない
      • optional: CA証明書があれば検証する
      • required: 必ずCA証明書の検証を行なう
  • TLS client Auth Trusted Certs (optional)
    • クライアント認証に利用する証明書のパス設定する
    • ファイルまたはディレクトリを指定する
  • TCP keepalive
    • チェックするとTCPキープアライブが有効になる
  • Enable Bulk Receiving
    • チェックすると改行 (n または rn) で区切られたメッセージの一括受信が有効になる
  • Enable CORS
    • チェックするとCORS関連の機能が有効になる
  • Max. HTTP chunk size(optional)
    • HTTPチャンクサイズの最大値を指定する
    • 単位はbyteです
  • Idle writer timeout
    • クライアントの書き込みリクエストのタイムアウト時間を指定する
    • 単位は秒です
  • Override source(optional)
    • sourceフィールドを強制的に上書きする値を設定するフォーム
    • 通常sourceフィールドには、ログの送信元が記録される
  • Encoding(optional)
    • 文字エンコーディングを指定する
  • Decompressed size limit(optional)
    • 圧縮されたデータを展開した後に許容する最大サイズ
    • 単位はbyteです

設定を行い Launch Input すると、新しいInputの情報が登録されます。

GraylogのInputs設定GELEHTTPの設定

この設定で、GraylogはHTTPプロトコルでGELFメッセージを受け取ることができます。 確認はcurlなどのコマンドで行なうことができます。

一覧へ