Supported OS Windows

概要

NXLog を構成して、ホスト、コンテナ、サービスからログを収集します。

セットアップ

以下では、TCP または HTTP のエンド ポイント経由でのログ収集、および NXLog TLS 暗号化 のセットアップを説明します。

TCP 経由のログ収集

選択した Datadog サイト () では TCP エンド ポイントはサポートされていません。ログ エンド ポイントの一覧は、ログ収集とインテグレーション を参照してください。

  1. Configure NXLog を構成してログを Datadog プラットフォームに送信し、C:\Program Files\nxlog\conf のファイル全体を以下の内容に書き換えます。

    ## Set the ROOT to the folder your nxlog was installed into,
    ## otherwise it won't start.
    #To change for your own system if necessary
    define ROOT C:\Program Files\nxlog
    #define ROOT_STRING C:\Program Files\nxlog
    #define ROOT C:\Program Files (x86)\nxlog
    Moduledir %ROOT%\modules
    CacheDir %ROOT%\data
    Pidfile %ROOT%\data\nxlog.pid
    SpoolDir %ROOT%\data
    LogFile %ROOT%\data\nxlog.log
    ##Extension to format the message in JSON format
    <Extension json>
        Module xm_json
    </Extension>
    ##Extension to format the message in syslog format
    <Extension syslog>
    Module xm_syslog
    </Extension>
    ########## INPUTS ###########
    ##Input for windows event logs
    <Input syslogs>
        Module      im_msvistalog
    ##For windows 2003 and earlier use the following:
    #    Module      im_mseventlog
    </Input>
    ############ OUTPUTS ##############
    ##TCP output module
    <Output out>
        Module      om_tcp
        Host        
        Port        
        Exec        to_syslog_ietf();
        Exec        $raw_event="<DATADOG_API_KEY> "+$raw_event;
    </Output>
    ############ ROUTES TO CHOOSE #####
    <Route 1>
        Path        syslogs => out
    </Route>
    

    上の <DATADOG_API_KEY> を忘れずに置き換えてください。

  2. 監視するファイルごとに NXLog 監視モジュールを有効にし、出力セクションの前に以下を追加します。

    ##Module to watch a file
    <Input FILE_WATCH_1>
      Module im_file
      File "PATH\\TO\\YOUR\\FILE1"
      Exec   $SourceName = '<MY_APPLICATION_NAME>';
      SavePos TRUE
    
      ##include the message and add meta data
      Exec $Message = $raw_event;
    </Input>
    
  3. それらのファイルを出力セクションに接続します。

    <Route file1>
        Path    FILE_WATCH_1,FILE_WATCH_2,... => out
    </Route>
    
  4. NXLog を再起動します。サービス管理ツールを開きます。

    C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Administrative Tools\Services.lnk
    
  5. (任意)追加のパラメーターまたはタグを設定します。NXLog 構成ファイルの各入力セクションで、ログに任意の属性を追加します。たとえば、ログの送信元のインテグレーションを識別するために Datadog で使用されるソースを指定するには、以下のようにします。

    Exec        $ddsource = 'mysourcevalue';
    Exec        $ddtags = 'env:test,<KEY>:<VALUE>';
    

HTTP 経由のログ収集

    ## nxlog をインストールしたフォルダーを ROOT に設定します。
    ## そうしないと起動しません。
    # 必要に応じて自身のシステム用に変更してください
    define ROOT C:\Program Files\nxlog
    #define ROOT_STRING C:\Program Files\nxlog
    #define ROOT C:\Program Files (x86)\nxlog
    Moduledir %ROOT%\modules
    CacheDir %ROOT%\data
    Pidfile %ROOT%\data\nxlog.pid
    SpoolDir %ROOT%\data
    LogFile %ROOT%\data\nxlog.log
    ## メッセージを JSON 形式に整形する拡張
    <Extension json>
        Module xm_json
    </Extension>
    ## メッセージを syslog 形式に整形する拡張
    <Extension syslog>
    Module xm_syslog
    </Extension>
    ########## 入力 (INPUTS) ###########
    ## Windows イベント ログ用の Input
    <Input syslogs>
        Module      im_msvistalog
    ## Windows 2003 以前の場合は次を使用します:
    #    Module      im_mseventlog
    </Input>
    ############ 出力 (OUTPUTS) ##############
    ## HTTP 出力モジュール
    <Output out>
        Module      om_http
        URL         
        Port        
        Exec        to_syslog_ietf();
        Exec        $raw_event="<DATADOG_API_KEY> "+$raw_event;
    </Output>
    ############ 選択するルート (ROUTES) #####
    <Route 1>
        Path        syslogs => out
    </Route>

NXLog の TLS 暗号化

  1. CA 証明書 をダウンロードします。

  2. NXLog 構成に om_ssl モジュールを追加して、ポート 10516 上での安全な転送を有効にします。

    <Output out>
      Module  om_ssl
      Host    
      Port    
      Exec    to_syslog_ietf();
      Exec    $raw_event="my_api_key " + $raw_event;
      CAFile  <CERT_DIR>/ca-certificates.crt
      AllowUntrusted FALSE
    </Output>
    

トラブルシューティング

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