Windows版ロギング・エージェントの配置

ロギング・エージェントをデプロイして、WindowsシステムからIBM Cloud Logsインスタンスにインフラストラクチャとアプリケーションのログを収集し、ルーティングすることができます。 サポートされるWindows環境の詳細については、ロギング・エージェント を参照してください。

サポートされている Windows システムにエージェントを展開するには、以下の手順を実行します。

エージェントの認証方法を定義する

エージェントの ID タイプと認証方法を選択します。 その後、必要に応じてAPIキーを作成する。

以下のステップを実行します。

  1. IDの種類を選択します:サービスIDまたは信頼されたプロファイル

    IBM Cloud Logsサービスで認証を行うには、サービスIDまたはTrusted Profileを使用することができます。 信頼済みプロファイルは、Virtual Servers for VPCでのみサポートされます。 メタデータ・サービスを有効にしてインスタンスを作成し、作成時にIDを指定して信頼済みプロファイルをインスタンスにリンクする必要があります。 詳細については 、「仮想サーバーインスタンスの作成 」を参照してください。

  2. 選択したIDに取り込みの許可を与える。

    Sender ロールは、IBM Cloud Logsにログを送信するために必要です。

    詳細については、取り込みのためのIAM権限の付与 を参照してください。

    Trusted Profileの詳細については、Generate Trusted Profile for ingestion を参照してください。

  3. サービスID認証用のAPIキーを生成します。

    信頼済みプロファイルを使用する認証では、この手順は必要ありません。

    詳細については、取り込みのためのAPIキーの生成 を参照してください。

エージェントファイルのダウンロード

以下のステップを実行します。

  1. Windows環境にログインします。

  2. WindowsエージェントのZIPアーカイブをダウンロードする。

    現在のロギング・エージェントバージョンについては、エージェントのリリースノート を参照してください。

  3. 以下のコマンドを実行してチェックサムを検証します

    sha256sum -c <sha256_filename>
    

    ここで、'<sha256_filename> はダウンロードした'*.sha256 ファイルのファイル名である。

  4. Powershellを使用して、'Program Files ディレクトリのWindowsエージェントアーカイブを展開する。

    Expand-Archive -Path <archive_filename> -DestinationPath "C:\Program Files\"
    

    <archive_filename> はダウンロードした *.zip ファイルの名前です。

  5. ディレクトリを展開されたWindowsエージェントアーカイブに変更します。

    cd "C:\Program Files\logs-agent"
    
  6. C:\Program Files\logs-agent 、設定ファイルをダウンロードする。

    wget https://logs-router-agent-config.s3.us.cloud-object-storage.appdomain.cloud/configure-logs-agent.ps1
    

Windowsイベントログを収集するために ロギング・エージェントを配置する

構成用のPowershellスクリプトを実行します。

./configure-logs-agent.ps1 -TargetHost <target_host> -TargetPort <target_port> -AuthMode <auth_mode> -IAMEnv <IAM_environment> [[-IAMApiKey] <iam_api_key>] [-TrustedProfile] <trusted_profile_id>] -Channels <channels_list> [[-DBPath] <database_path>] [-VSISecureAccess]

説明

-TargetHost <target_host>

The host for IBM Cloud Logs ingestion, found in the Endpoints section of your IBM Cloud Logs instance Overview. イングレス・エンドポイントを使用する。 詳細は、イングレス・エンドポイント を参照

-TargetPort <target_port>

これはIBM Cloud Logsへのネットワーク接続に依存する。 IBM Cloud Logs Routingには「3443 指定してください。

  • 443: パブリックなイングレーショ ンエンドポイント
  • 443: プライベート・イングレス・エンドポイント(VPE)
  • 3443: プライベート・イングレス・エンドポイント(CSE)
-IAMEnv <IAM_environment>

(オプション) IAM 認証にパブリック・エンドポイントまたはプライベート・エンドポイントのどちらを使用す るかを指定します。 Production は、パブリック・エンドポイントを使用することを示します。 PrivateProduction は、プライベート・エンドポイントを使用することを指定します。 Production が既定です。

あなたのシステムがパブリック・インターネットにアクセスできない場合、プライベート・エンドポイントを使用するには「PrivateProduction 使用しなければならない。

-AuthMode <auth_mode>

IAMAPIKey または 'VSITrustedProfile を指定する。

-IAMApiKey <iam_api_key>

(オプション)Cloud Identity and Access ManagementAPI キーを指定します。APIキー (「IAMAPIKey モードでは必須)。 APIキーの生成」の指示に従ってください。

Cloud Identity and Access ManagementAPIキーの詳細については、'APIキーの管理 を参照のこと。

-TrustedProfile <trusted_profile_id>

(オプション)信頼済みプロファイルIDを指定する(「VSITrustedProfile モードでは必須)。 信頼済みプロファイルを使用する場合は、 IAMのインポート権限付与 で設定したIDに設定します。

信頼済みプロファイルの詳細については、信頼済みプロファイルの作成 を参照してください。

-Channels <channels_list>

(オプション) チャンネルリストが指定された場合、デフォルトの「winevtlog 入力プラグインが、指定されたチャンネルからイベントを読み込むように設定される。 Windowsイベントログから読み込むチャンネルを、スペースなしでカンマ区切りのリストとして指定する。

-DBPath <database_path>

(オプション) 'Channels パラメータが提供されている場合、このパラメータに、処理されたイベントの位置を格納するデータベースファイルを設定する。 このパラメータが設定されず、'Channels パラメータが提供された場合、 デフォルトのデータベース・ファイルは 'C:\Program Files\logs-agent\winevtlog.sqlite となる。

-VSISecureAccess

(オプション)VSIでセキュアアクセスを有効にしている場合、このフラグを設定する。 このオプションはデフォルトでは無効になっています。

ファイルをインクルードまたは除外するように ロギング・エージェントを設定する

ロギング・エージェントを設定して、エージェントが監視するファイルを含めたり除外したりすることができます。

  1. 入力プラグイン設定ファイル input-tail.confC:\Program Files\logs-agent\etc に作成する。

  2. INPUTセクションを追加します。

    監視したいディレクトリとファイルを Path に設定します。

    Exclude_Path に監視から除外したいディレクトリとファイルを設定します。

    [INPUT]
        Name              tail
        Tag               *
        Path              C:\logs\*.log
        Path_Key          file
        Exclude_Path      C:\logs\audit.log
        DB                C:\logs\fluent-bit.DB
        Buffer_Chunk_Size 32KB
        Buffer_Max_Size   256KB
        Skip_Long_Lines   On
        Refresh_Interval  10
    
  3. 構成ファイルを保存します。

  4. C:\Program Files\logs-agent\etc\input-windows-event-log.conf への参照を含むように C:\Program Files\logs-agent\etc\fluent-bit.conf ファイルを修正する。

    @INCLUDE C:\Program Files\logs-agent\etc\input-windows-event-log.conf
    

    メインのコンフィギュレーション・ファイル C:\Program Files\logs-agent\etc\fluent-bit.conf は、 @INCLUDE <path_to_file> というタグを持つ他のファイルをインポートする。

メタデータの追加

applicationNamesubsystemName を含むように ロギング・エージェントを設定する必要がある。 カスタムメタデータの追加も可能です。

  • アプリケーション名は、 IBM Cloud Logs インスタンスにログを生成し送信する環境である。 変数 ${COMPUTERNAME} を使用するか、コンピュータのホスト名を入力して、値をホスト名に設定する。
  • サブシステム名は、 IBM Cloud Logs インスタンスにログを生成して送信するサービスまたはアプリケーションです。 例えば、プロバイダー名を設定することができる。
[FILTER]
    Name modify
    Match winevtlog.*
    Copy ProviderName subsystemName
    Add applicationName ${COMPUTERNAME}
    Add meta.source ${SOURCE}
    Add meta.channel ${Channel}
    Add meta.providerName ${ProviderName}
    Add meta.environment prod
    Add meta.platform windows

[FILTER]
    Name nest
    Match winevtlog.*
    Operation nest
    Wildcard meta.*
    Nest_under meta
    Remove_prefix meta.

エージェント設定の確認

エージェントを実行して、エージェント設定が正しいことを確認する。

.\bin\fluent-bit.exe -c C:\Program Files\logs-agent\etc\fluent-bit.conf

エージェントは起動し、目的のターゲットへの接続を確立する。

Windowsサービスの作成

Windowsサービスは、長時間実行されるバックグラウンドプロセスであり、Windows上でエージェントを実行するのに適した方法です。

以下のステップを実行します。

  1. エージェントをWindowsサービスとして登録するには、以下のコマンドを実行する。

    binpath= 後には半角スペースが必要です。

    sc.exe create fluent-bit binpath= "C:\Program Files\logs-agent\bin\fluent-bit.exe -c \"C:\Program Files\logs-agent\etc\fluent-bit.conf\""
    
  2. 認証に「IAMAPIKey 使用するエージェントの場合、レジストリに「fluent-bit サービス用のAPI Keyを作成する。

    New-ItemProperty -Path "HKLM:\System\CurrentControlSet\Services\fluent-bit" -Name "Environment" -Value "IAM_API_KEY=<my_api_key>" -PropertyType MultiString
    
  3. Windowsサービスを開始する

    sc.exe start fluent-bit
    

ログが目的の宛先に配信されていることを確認する

以下のステップを実行します。

  1. あなたIBM Cloud LogsインスタンスのウェブUIにアクセスしてください。

  2. エージェントが正しく設定されている場合、デフォルトのダッシュボードビューでログを見ることができます。