はじめてのSplunk ― 概要から応用までを体系的に学ぶ

4-5 フィールドエイリアスと計算されたフィールド

1. フィールドエイリアスとは

フィールドエイリアス(Field Alias)とは、 既存のフィールドに別名を与えて、同じ値を別の名前でも参照できるようにする機能です。 元のフィールドはそのまま残り、新しい名前が追加で使えるようになります。

たとえば、あるログでは送信元IPがsrc_ipという名前で抽出されているとします。 これにsrcというエイリアスを付けておけば、 src_ipでもsrcでも同じ値を検索・集計できるようになります。

SPL ― エイリアスを付けると同じ値を参照できる
index=web | stats count by src

2. CIM正規化での活躍

フィールドエイリアスが特に役立つのが、CIM(共通情報モデル)への正規化です。

ログの種類が違えば、同じ「送信元IP」でもsrc_ipclientipsource_addressなど、 フィールド名がバラバラになりがちです。 これらすべてにsrcというエイリアスを付ければ、 データ源が違っても同じ名前で横断的に検索できるようになります。

CIMはSplunkが定めるフィールド名の共通ルールです。 複数のデータソースを同じ名前にそろえておくと、 アプリやダッシュボードをデータ源に依存せず使い回せます。

3. 計算されたフィールドとは

計算されたフィールド(Calculated Field)は、 eval式を設定として登録し、検索のたびに自動で計算されるフィールドを作る機能です。

たとえば、バイト数bytesをメガバイトに直した値がよく必要になるとします。 本来は毎回eval mb=bytes/1024/1024と書く必要がありますが、 これを計算されたフィールドとして登録しておけば、 サーチのたびにmbが自動で現れ、毎回evalを書かなくてよくなります。

SPL ― 登録しておけばevalを書かずに使える
index=web | stats avg(mb) by host

計算されたフィールドの中身はeval式そのものなので、 四則演算や文字列操作、条件分岐(ifcase)なども利用できます。

4. 設定方法と使い分け

どちらも、Web画面の「設定 > フィールド」から作成・管理します。 フィールドエイリアスは「フィールドエイリアス」、 計算されたフィールドは「計算されたフィールド」の項目で、対象のソースタイプを指定して登録します。

機能 何をするか 使いどころ
フィールドエイリアス 既存フィールドに別名を付ける 名前の統一・CIM正規化
計算されたフィールド eval式を自動で計算する 変換や導出値を毎回作る手間を省く

どちらも恒久的な設定であり、権限(Private/App/Global)で共有範囲を管理します。 広く共有すると同じソースタイプを見る全員に影響する点は、前節の抽出と同じです。

5. まとめ

  • フィールドエイリアスは既存フィールドに別名を与え、同じ値を別名でも参照できる
  • 名前がバラバラなフィールドをそろえるCIM正規化に役立つ
  • 計算されたフィールドはeval式を登録し、検索のたびに自動計算する
  • どちらも「設定 > フィールド」から作成し、権限で共有範囲を管理する