次の方法で共有


Splunk Universal Forwarder から Azure Data Explorer にデータを取り込む

重要

このコネクタは、Microsoft Fabric のリアルタイム インテリジェンスで使用できます。 次の例外を除き、この記事の手順を使用してください。

Splunk Universal Forwarder は、Splunk Enterprise ソフトウェアの軽量バージョンであり、多数のソースから同時にデータを取り込むことができます。 さまざまなソースから中央の Splunk Enterprise サーバーまたは Splunk Cloud デプロイにログ データとマシン データを収集して転送するように設計されています。 Splunk Universal Forwarder は、データ収集と転送のプロセスを簡略化するエージェントとして機能し、Splunk のデプロイで不可欠なコンポーネントとなっています。 Azure Data Explorer は、ログと利用統計情報データのための高速で拡張性に優れたデータ探索サービスです。

この記事では、Kusto Splunk Universal Forwarder Connector を使用して、クラスター内のテーブルにデータを送信する方法について学習します。 最初にテーブルとデータのマッピングを作成し、次にデータをテーブルに送信して結果を検証するように Splunk に指示します。

前提条件

Azure Data Explorer クラスターを作成する

Splunk Universal Forwarder からデータを受信するテーブルを作成し、このテーブルへのアクセス権をサービス プリンシパルに付与します。

次のステップでは、1 つの列 (RawText) を含む SplunkUFLogs という名前のテーブルを作成します。 これは、Splunk Universal Forwarder が既定では生のテキスト形式でデータを送信するためです。 次のコマンドは、Web UI クエリ エディターで実行できます。

  1. テーブルを作成します。

    .create table SplunkUFLogs (RawText: string)
    
  2. テーブル SplunkUFLogs が作成され、空になっていることを確認します。

    SplunkUFLogs
    | count
    
  3. 前提条件のサービス プリンシパルを使用して、テーブルを含むデータベースを操作するためのアクセス許可を付与します。

    .add database YOUR_DATABASE_NAME admins ('aadapp=YOUR_APP_ID;YOUR_TENANT_ID') 'Entra service principal: Splunk UF'
    

Splunk Universal Forwarder を構成する

Splunk Universal Forwarder をダウンロードすると、フォワーダーを構成するためのウィザードが開きます。

  1. ウィザードで、Kusto Splunk Universal Forwarder コネクタをホストしているシステムを指すように受信インデクサーを設定します。 ホスト名または IP127.0.0.1、ポートに 9997 を入力します。 宛先インデクサーは空白のままにします。

    詳細については、「Splunk Enterprise のレシーバーを有効にする」を参照してください。

  2. Splunk Universal Forwarder がインストールされているフォルダーに移動してから、/etc/system/local フォルダーに移動します。 フォワーダーがログを読み取れるように、inputs.conf ファイルを作成または変更します。

    [default]
    index = default
    disabled = false
    
    [monitor://C:\Program Files\Splunk\var\log\splunk\modinput_eventgen.log*]
    sourcetype = modinput_eventgen
    

    詳細については、「inputs.conf を使用してファイルとディレクトリを監視する」を参照してください。

  3. Splunk Universal Forwarder がインストールされているフォルダーに移動してから、/etc/system/local フォルダーに移動します。 outputs.conf ファイルを作成または変更して、ログの宛先の場所を決定します。これは、Kusto Splunk Universal Forwarder コネクタをホストするシステムのホスト名とポートになります。

    [tcpout]
    defaultGroup = default-autolb-group
    sendCookedData = false
    
    [tcpout:default-autolb-group]
    server = 127.0.0.1:9997
    
    [tcpout-server://127.0.0.1:9997]
    

    詳細については、「outputs.conf を使用して転送を構成する」を参照してください。

  4. Splunk Universal Forwarder を再起動します。

Kusto Splunk Universal コネクタを構成する

Azure Data Explorer テーブルにログを送信するように Kusto Splunk Universal コネクタを構成するには:

  1. GitHub リポジトリからコネクタをダウンロードまたはクローンします。

  2. コネクタのベース ディレクトリに移動します。

    cd .\SplunkADXForwarder\
    
  3. 次のプロパティが含まれるように、config.yml を編集します。

    ingest_url: <ingest_url>
    client_id: <ms_entra_app_client_id>
    client_secret: <ms_entra_app_client_secret>
    authority: <ms_entra_authority>
    database_name: <database_name>
    table_name: <table_name>
    table_mapping_name: <table_mapping_name>
    data_format: csv
    
    フィールド 説明
    ingest_url Azure Data Explorer クラスターのインジェスト URL。 Azure portal の、クラスターの [概要] タブにある [データ インジェスト URI] で確認できます。 https://ingest-<clusterName>.<region>.kusto.windows.net 形式にする必要があります。
    client_id [前提条件] セクションで作成した Microsoft Entra アプリケーション登録のクライアント ID。
    client_secret [前提条件] セクションで作成した Microsoft Entra アプリケーション登録のクライアント シークレット。
    authority [前提条件] セクションで作成した Microsoft Entra アプリケーション登録が保持されるテナントの ID。
    database_name Azure Data Explorer データベースの名前。
    table_name Azure Data Explorer の宛先テーブルの名前。
    table_mapping_name テーブルのインジェスト データ マッピングの名前。 マッピングがない場合は、構成ファイルからこのプロパティを省略できます。 後でいつでもさまざまな列にデータを解析できます。
    data_format 受信データに必要なデータ形式。 受信データは生のテキスト形式であるため、csv の形式が推奨され、既定では生のテキストがゼロ インデックスにマップされます。
  4. Docker イメージをビルドします:

    docker build -t splunk-forwarder-listener
    
  5. Docker コンテナーを実行します。

    docker run -p 9997:9997 splunk-forwarder-listener
    

データが Azure Data Explorer に取り込まれていることを確認する

Docker が実行されると、データが Azure Data Explorer テーブルに送信されます。 データが取り込まれたことを確認するには、Web UI クエリ エディターでクエリを実行します。

  1. 次のクエリを実行して、データがテーブルに取り込まれていることを確認します。

    SplunkUFLogs
    | count
    
  2. Run the following query to view the data:

    SplunkUFLogs
    | take 100