😎

Splunk - ピボット(Pivot)

2025/01/24に公開

公式を参考にピボット機能(Pivot)の使用方法について確認します。

https://docs.splunk.com/Documentation/Splunk/9.4.0/Pivot/IntroductiontoPivot

ピボット(Pivot)

ピボット機能を使用すると、SPLを使用せずに特定のデータセットについてレポートを作成することができます。レポートを作成するデータセットを特定し、ドラッグアンドドロップで、表、グラフ、その他の視覚化形式でデータのさまざまな側面を示すピボットテーブルを生成します。

ピボットはデータモデルを使用して、作業対象のイベントデータのカテゴリーを定義します。次に、配置されたデータモデルのデータセットの集合を使用して、元のデータセットをさらに細分化し、ピボットが結果を返すフィールドを定義します。

下記の例はtutorialPivotTableデータセットを_timehostフィールドで細分化したピボットテーブルです。

データセットとは

データセットの正確な構成は、選択したデータセットの種類とデータモデル管理者によって定義されたデータセットの方法によって決定されます。データセットの種類には、以下の4つがあります。

データセットの種類 説明
イベントデータセット イベントデータセットはイベントの集合です。ルートイベントデータセットは制約によって定義されます。
トランザクションデータセット トランザクションデータセットは、トランザクション(何らかの関連性を持つイベントのグループ)を表します。(例:ある攻撃者のファイアウォールへの侵入インシデントに関連するイベント)
サーチデータセット サーチデータセットは任意の検索結果を表します。通常、変換コマンドまたはストリーミングコマンドを使用してテーブル形式で結果を返す検索により定義され、その検索結果を含んでいます。
子データセット 子データセットは、任意のデータセットに追加することができます。親データセットに包含されるデータセットのサブセットを表します。特定のレポートで作業する際に必要なデータの一部を正確に表すため、子データセットを基にピボットを作成することができます。

データセットの制約

制約とは、新規で設定を行うデータセットを定義するためのサーチ文です。 データセットを定義するためにはルートイベントデータセットとすべての子データセットが使用されます。 子データセットは親データセットの制約やフィールド定義を継承し追加の制約を持つため、親データセットのサブセットとなります。

データセットの作成方法

ここではピボットに必要なデータセットを作成する一例を紹介します。

  1. 「Search & Reporting app」から[データセット]タブをクリックし、[テーブルビューの作成]をクリックします。

  1. ピボットを作成したいデータモデルのデータセットを特定するために、インデックスの指定やフィールドの指定を行います。例では「botsv2」インデックスからWinEventソースタイプのフィールドを指定して作成します。

  1. 最後にデータの加工を行うことができます。null 値を置き換えたり、null のないイベントのみを限定してフィルタリングする事も可能です。加工を終えたら[保存]をクリックします。

  1. データセットテーブルの名前、テーブルID、テーブルの説明を加えて[保存]します。

ピボットエディター

再度、[データセット]タブに戻ると、先ほど作成したデータセットテーブルが表示されているので、[ピボットで可視化]を選択すると選択したデータセットでピボットエディターが開かれます。

行情報に_timeフィールド、列情報にTaskCategoryを設定し、ピボットで分析を行ってみます。
2017/8/19に大量のCredential Validation(資格情報の検証)が発生していることが分かります。カウント数を目立たせるために色で識別することも可能です。

グラフで視覚的に確認することも可能です。他のTaskCategoryの値も併せて分析することが出来ます。

Discussion