概要
計算フィールドを使用して、クエリ実行時にログデータを変換および拡張します。 以下の操作を行うための数式を定義します。
定義された計算フィールドは、検索、集計、視覚化、さらには他の計算フィールドの定義など、任意のログ属性と同様に使用できます。
注:
- 一度に定義できる計算フィールドは最大 5 つです。
- 計算フィールドは一時的なものであり、指定した Log Explorer セッションを越えては保持されません。計算フィールドが繰り返し有用である可能性がある場合は、ログが取り込まれ処理される際に、ログパイプラインを更新してログ内の情報をエンコードしてください。
計算フィールドの作成
Log Explorer で計算フィールドを作成するには、Add メニューまたは特定のログイベントや属性内の 2 つのエントリーポイントがあります。
計算フィールドの開始ポイントを選択します
Add メニューから
- Log Explorer に移動します。
- 検索バーの隣にある ** Add** ボタンをクリックします。
- Calculated field を選択します。
これは、対象のログの構造と内容にすでに精通している場合に、計算フィールドをすばやく作成する方法です。
特定のログイベントまたは属性から
- Log Explorer に移動します。
- 対象のログイベントをクリックしてサイドパネルを開きます。
- 特定の JSON 属性をクリックしてコンテキストメニューを開きます。
- Create calculated from… を選択します。
この方法により、調査中に素早く適応したり、見慣れないログを調査したりすることができます。 例えば、2 つの値を乗算または結合し、その結果を単一のフィールドに格納してグラフを簡略化したり、特定の質問に回答したりすることができます。
計算フィールドの定義
名前
計算フィールドの目的を明確に示すわかりやすい名前を設定します。 例えば、ユーザーの姓と名の両方を大文字にして 1 つのフィールドに結合することが目的である場合、計算フィールドの名前として formatted_name
を使用できます。その後 Bob Smith
というユーザーのログをフィルタリングするには、クエリを更新して #formatted_name:"Bob Smith"
を含めます。
注: 検索、集計、または他の計算フィールド定義で計算フィールドを参照するには、#
プレフィックスを使用する必要があります。
計算式
計算式 (または式) は、各ログイベントに対して計算され、計算フィールドの値として格納される結果を決定します。 有効な構成には、ログ属性、他の計算フィールド、およびサポートされている関数と演算子のセットが含まれます。 関連するフィールド、関数、および演算子は、式を記述または編集する際に自動的に提案されます。
使用可能な関数と演算子については、計算フィールド式言語を参照してください。
計算フィールドの使用
計算フィールドの作成に成功すると、Log Explorer が更新され、以下のようになります。
- アクティブな計算フィールドが検索バーのすぐ下の新しい行に表示されます。
- フィールドにカーソルを合わせると定義が表示され、クイックアクションを使用してフィールドの編集、フィルタリング、グループ化を行うことができます。
- 計算フィールド用の列を List の可視化に含めます。 タイトルには # プレフィックスが含まれます。
- ログサイドパネル内の別のセクションに計算フィールドを表示します。
計算フィールドはログ属性のように機能し、検索、集計、可視化、さらに他の計算フィールドの定義に使用できます。計算フィールド名を参照する際には、# プレフィックスを忘れずに付けてください。
ユースケース
計算フィールドは、ログの取り込み時のパース、正規化、および拡張のためのログパイプラインやプロセッサの代替ではありません。 計算フィールドは、以下のシナリオで使用します。
- 長期的に再利用する必要のないフィールドを必要とする、単発の調査やアドホック分析を行う必要がある。
- 特定の質問に回答するために、インデックス化されたログを遡って更新する必要がある (パイプラインの変更は、パイプラインの更新後に取り込まれたログにのみ適用されます)。
- ログパイプラインをタイムリーに変更する権限 (または知識) が不足している。
- 作成した計算フィールドは自分にのみ表示されるため、迅速な調査や安心して行える実験に最適です。
計算フィールドが長期的に価値を持つ可能性があると気づいた場合は、ログパイプラインを更新して、自分やチームの他のメンバーが自動処理のメリットを享受できるようにします。
参考資料