メインコンテンツまでスキップ
Sumo Logic Japanese

Fields

フィールドでは、意味のある関連付けに基づくログ データを参照できます。フィールドは、ログに割り当てられたメタデータ タグとして機能するため、検索時に指定できます。各フィールドには、キーと値のペアが含まれており、フィールド名がキーになっています。フィールドは、ログ メタデータ フィールドと呼ばれることもあります。

FER (Field Extraction Rules) によってフィールドを定義するほかに、Sumo に送信されるデータでフィールドを定義できます。これは、Source および Collector で手動で定義するか、Amazon EC2 から HTTP ヘッダーおよびタグを介して動的に定義します。

フィールドの割り当ての優先順位を最上位から下位の順に次に示します。

  1. Field Extraction Rule (FER)
  2. Amazon EC2 リソース タグ
  3. Amazon EC2 インスタンス情報
  4. HTTP ヘッダー
  5. Source
  6. Collector

このため、Collector レベルまたは Source レベルで定義したフィールドがある場合に、FER を同じデータ ソースの同じフィールド名について作成すると、FER のフィールドの割り当てが優先されます。

ログ データに割り当てるフィールドは、[Fields (フィールド)] テーブル スキーマに存在する必要があります。各アカウントには、Sumo Web インターフェイスで管理できる独自のフィールド スキーマがあります。フィールド スキーマでフィールドが定義されると、設定に従って適切なログ データにフィールドが割り当てられます。[Fields (フィールド)] スキーマに存在しないフィールドが Sumo に送信された場合は無視され、削除済みとして認識されます。

検索のパフォーマンスを維持し、データに継続的に有意義なフィールドを割り当てるには、フィールド管理が重要です。前述のいずれかの方法で定義されたフィールドはいつでも管理でき、不要なフィールドを削除することもできます。詳細については「フィールドの管理」を参照してください。

制限事項
  • ログのメタデータとして作成された FER (Field Extraction Rules) からのフィールドについては、200 のフィールドが同じクォータを共有します。[Fields (フィールド)] ページには、テーブルの下部の [Fields Capacity (フィールド許容数)] に、自分のアカウントが使用しているフィールド数と総許容数に占める割合が表示されます。
    fields capacity.png
  • データへのフィールドの割り当てが開始されるまでに最大 10 分かかります。
  • Collector には最大 10 個のフィールドを使用できます。
  • Source では最大 10 個のフィールドを使用できます。
  • HTTP リクエストは 20 フィールドに制限されています。
  • フィールド名 (キー) は、最大 255 文字に制限されています。
  • 値の最大長は 200 文字に制限されています。
  • フィールドは、Live Tail または FER (Field Extraction Rules) の範囲では使用できません。

Collector と Source フィールド

Collector または Source の作成および編集時に、Sumo ユーザ インターフェイスの [Fields (フィールド)] 入力テーブルを使用することにより、フィールドを Collector および Source に割り当てることができます。

  1. [Manage Data (データの管理)] > [Collection (コレクション)] > [Collection (コレクション)] の順に移動します。
  2. フィールドを割り当てる Collector または Source を作成または検索して選択します。
  3. [Fields (フィールド)] セクションの [+Add Field (+フィールドの追加)] リンクをクリックします。
    • 関連付けるフィールドを定義します。各フィールドには、名前 (キー) と値が必要です。 
      • green check circle.png [Fields (フィールド)] テーブル スキーマにフィールドが存在し、有効化されている場合は、チェック マークを含む緑色の円が表示されます。
      • orange exclamation point.png [Fields (フィールド)] テーブル スキーマにフィールドが存在しない場合、またはフィールドが無効化されている場合は、感嘆符を含む橙色の三角形が表示されます。この場合は、存在しないフィールドを [Fields (フィールド)] テーブル スキーマに自動的に追加する、または有効化するオプションが表示されます。[Fields (フィールド)] スキーマに存在しないフィールドが Sumo に送信された場合、または無効化された場合、このフィールドは無視され、削除済みとして認識されます。
  4. [Save (保存)] をクリックします。

edit collector fields name.png

上の例では、cluster という新しいフィールドを作成し、値を k8s.dev に設定しています。上の設定により、この Collector に送信されるログには、このキーと値のペアが関連付けられるようになります。

この関連付けにより、cluster=k8s.dev を検索することで、ログが返されます。

collector field search results.png

Collector API の使用

Collector APIfields パラメータを使用することで、Collector または Source のフィールドを定義します。

パラメータ タイプ 必須 説明 アクセス
フィールド JSON オブジェクト 不可 Collector または Source に適用するキーと値のフィールド (メタデータ) の JSON マップ。 変更可

次の JSON は、fields パラメータを使用した Hosted Collector の設定例です。

{
  "collector":{
    "collectorType":"Hosted",
    "name":"My Hosted Collector",
    "description":"An example Hosted Collector",
    "category":"HTTP Collection",
    "fields": {
        "cluster":"k8s.dev"
    }
  }
}

ローカル設定の使用

Installed Collector でローカル設定ファイル管理を使用する場合は、JSON ファイルを使用して Source を設定できます。JSON 設定で fields のパラメータを使用して、Source のフィールドを定義します。

パラメータ タイプ 必須 説明 アクセス
フィールド JSON オブジェクト 不可 Collector または Source に適用するキーと値のフィールド (メタデータ) の JSON マップ。 変更可

次の JSON は、fields パラメータを使用したローカル ファイル Source の設定例です。

{
   "api.version":"v1",
   "sources":[{
    "name":"Test-Chef",
    "category":"Chef",
    "automaticDateParsing":true,
    "multilineProcessingEnabled":false,
    "useAutolineMatching":false,
    "forceTimeZone":false,
    "timeZone":"UTC",
    "filters":[],
    "cutoffTimestamp":1426057200000,
    "encoding":"UTF-8",
    "fields":{
      "node":"hornetq-livestream-9",
      "deployment":"sumologic",
      "cluster":"k8s.dev"
    },
    "pathExpression":"/home/ubuntu/chef*.log",
    "blacklist":[],
    "sourceType":"LocalFile"
  }]
}
​​​​​​

HTTP Source フィールド

HTTP Source でログ データをアップロードする場合、X-Sumo-Fields HTTP ヘッダーによってフィールドを渡すことができます。フィールドは、キーと値のペアのコンマ区切りリストにする必要があります。たとえば、カスタム フィールドを持つデータを投稿する cURL コマンドは次のようになります。

curl -v -X POST -H 'X-Sumo-Fields:environment=dev,cluster=k8s' -T /file.txt <HTTP endpoint>

HTTP Source にログをアップロードする方法を参照してください。

データとともに渡されるフィールドは、Sumo で定義されている [Fields (フィールド)] テーブル スキーマに存在する必要があります。Sumo で定義されていないフィールドがヘッダーによって渡される場合、すべて削除されます。フィールドの定義方法については、「フィールドの管理」セクションを参照してください。

EC2 からのタグ

Sumo Logic AWS メタデータ Source を作成して、AWS で実行されている EC2 インスタンスからカスタム タグを収集します。Installed Collector は、availabilityZone、instanceId、instanceType、および region を取得するために、『AWS インスタンス ID ドキュメント』 (IMDSv1) をインスタンスから自動的にプルします。

インスタンス情報タグなどのタグが組織の [Fields (フィールド)] テーブルに存在している場合は、EC2 インスタンス上の Installed Collector によって取り込まれたログにタグが付けられます。フィールドの定義方法については、「フィールドの管理」セクションを参照してください。EC2 リソースのタグは、EC2 インスタンス情報より優先されます。1 つの AWS メタデータ Source だけで、複数のホストからタグを収集できます。

タグは、検索結果内に返され、クエリで参照することが可能です。EC2 インスタンスへのタグの割り当てについては、AWS ヘルプの「Amazon EC2 リソースにタグを付ける」を参照してください。 

フィールドの使用

フィールドは次の方法で使用できます。

フィールドの管理

アカウントのフィールドは、[Manage Data (データの管理)] > [Settings (設定)] > [Fields (フィールド)] で管理できます。

fields table aug 12th 2019.png

[Manage Data (データの管理)] > [Settings (設定)] > [Fields (フィールド)] ページには、次の情報が表示されます。 

  • [Status (ステータス)] には、フィールドが有効に適用されていることを示す緑色の円のチェックマーク check in green circle.png、またはフィールドが無効で削除されていることを示す赤色の円の感嘆符 exclamation in red circle.png が表示されます。
  • [Field Name (フィールド名)] は、フィールドの名前であり、キーと値のペアのキーとも呼ばれます。
  • [Data Type (データ型)] には、フィールドのデータ型が表示されます。
  • [Field Extraction Rules (FER)] にはフィールドを参照する FER (Field Extraction Rules) の数が表示されます。
  • [Role Based Access Control (ロールベース アクセス制御)] には、フィールドを参照する検索フィルタを使っているロールの数が表示されます。
  • [Partitions (パーティション)] には、フィールドを参照するパーティションの数が表示されます。
  • [Collectors (Collector)] には、フィールドを参照する Collector の数が表示されます。(カスタム フィールドを表示するときに使用できます)。
  • [Source (Source)] には、フィールドを参照する Source の数が表示されます。(カスタム フィールドを表示するときに使用できます)。
  • [Fields Capacity (フィールド許容数)] (テーブルの下部) には、自分のアカウントが使用しているフィールドの数と、合計の使用可能数に占める割合が表示されます。

[Manage Data (データの管理)] > [Settings (設定)] > [Fields (フィールド)] ページで、次のことができます。

  • [+ Add (+ 追加)] をクリックして、フィールドを追加します。
  • フィールドの検索
    • 追加ボタンの横のドロップダウンで、次の項目を切り替えることができます。
      • [Existing - Built-in Fields (既存 - 組み込みフィールド)]。これは Sumo Logic によって作成されたメタデータ フィールドであり、変更できません。
      • [Existing - Custom Fields (既存 - カスタム フィールド)]。このフィールドは、FER またはユーザによって作成されたものです。
      • [Dropped Fields (削除されたフィールド)]。このフィールドは、フィールド テーブルに存在しないため削除されています。
  • フィールドの無効化
  • フィールドの削除 

リスト表示されているフィールドについて、行を選択すると詳細が表示されます。テーブルの右側に詳細ペインが表示され、フィールドを無効化および削除できます。

selected field details pane.png

フィールドの追加

フィールドを追加すると、[Fields (フィールド)] テーブル スキーマで定義され、ログにメタデータとして割り当てることができるようになります。

  1. テーブルの右上にある [+ Add (+ 追加)] ボタンをクリックします。[Add Field (フィールドの追加)] という名前のパネルがフィールド テーブルの右側に表示されます。
  2. フィールド名を入力し、[Save (保存)] をクリックします。

add field input.png

フィールドの無効化

フィールドを無効にすると、フィールドが新しいログデータに割り当てられなくなります。フィールドを使用している検索は引き続き機能しますが、無効にした後にその結果ではフィールドが返されなくなります。収集済みのデータは影響を受けません。無効になる前に収集されたデータについては、無効になったフィールドを検索できます。

フィールドの詳細ペインで、メニュー アイコンを選択し、[Disable (無効化)] を選択します。

disable field.png

フィールドの削除

[Fields (フィールド)] テーブルの行の右側、またはフィールドの詳細ペインで削除アイコン delete icon.png を選択します。フィールドを削除するには、いくつかの機能からそのフィールドへの参照を削除する必要があります。フィールドが次のいずれかによって使用されている場合には、

  • FER (Field Extraction Rules)
  • ロール
  • パーティション
  • Collector
  • Source

以下のメッセージが表示されます。フィールド参照を削除するには、フィールド参照を削除する必要があります。

たとえば、フィールドが FER (Field Extraction Rules) で使用されている場合、フィールドを削除する前に、まず FER (Field Extraction Rules) を削除する必要があります。

field cannot delete.png

上記の機能でフィールドが使用されていない場合、次のメッセージが表示されます。

delete field confirm.png

削除されたフィールドの表示

削除されたフィールドは Sumo に送信されるフィールドですが、[Fields (フィールド)] テーブル スキーマに定義されていないため無視されています。削除されたフィールドを選択して表示するには、[+ Add (+ 追加)] ボタンの左側にあるドロップダウン オプションを使用します。

dropped fields table.png

テーブルから削除されたフィールドを選択して、詳細ペインを開きます。必要に応じてフィールドを作成できる便利なボタンが用意されています。

create field from dropped table.png

 

  • この記事は役に立ちましたか?