メインコンテンツへスキップ
ログを検索する際は、検索を絞り込むために Lucene クエリ構文 の一部を使用してクエリを作成できます。 クエリ文字列は、一連の用語と演算子として解析されます。
  • 用語には、janesmith のような単一の単語を指定できます。
  • 用語には、二重引用符で囲んだフレーズ ("customer log") を指定することもでき、その場合はフレーズ内のすべての単語が同じ順序で一致します。
  • フィールド名のない用語は、これらの選択されたフィールドにのみ一致します。
  • 複数の用語は、かっこでグループ化してサブクエリを作成できます。
  • すべての検索フィールドでは、大文字と小文字が区別されます。
  • 演算子 (ANDORNOT) は、すべての検索可能なフィールドに対して機能します。

検索可能なフィールド

以下のフィールドは検索可能で、大文字と小文字が区別されます。
フィールド説明
client_idイベントに関連するクライアントID。
client_nameイベントに関連するクライアント名。
connectionイベントに関連する接続名。
connection_idイベントに関連する接続ID。
descriptionイベントの説明。
dateイベントの発生日。形式は YYYY-MM-DD です。
hostname認証フローで使用されるホスト名。
ipログエントリの原因となったリクエストの送信元IPアドレス。
log_idイベントのログID。
organization_idイベントに関連する組織ID。
user_idイベントに関連するユーザーID。
user_nameイベントに関連するユーザー名。
user_agentイベントに関連するユーザーエージェント。
strategyイベントに関連する接続戦略。
strategy_typeイベントに関連する接続戦略のタイプ。
typeイベントの種類。

フィールド名を指定しない検索語で検索できるフィールド

検索語をフィールド名なしで入力した場合、検索対象となるのは次のフィールドのみです。
  • client_name
  • connection
  • description
  • ip
  • log_id
  • type
  • user_name

完全一致

完全一致で検索するには、二重引用符を使用します: description:"Username invalid" たとえば、説明が Username invalid のログを検索するには、q=description:"Username invalid" を使用します。

ワイルドカード

ワイルドカード検索では、アスタリスク文字 (*) を使って 0 文字以上の文字を置き換え、用語を検索できます。例: user_name:john*。たとえば、user_name:j* のように前方一致に使用できます。ワイルドカードのその他の使い方 (たとえば後方一致) では、リテラルは 3 文字以上である必要があります。たとえば、name:*usa は使用できますが、name:*sa は使用できません。 疑問符文字 (?) はサポートされていません。 たとえば、john で始まる username を持つユーザーのすべてのログを検索するには、q=user_name:john* を使用します。

範囲

ログ検索クエリでは、範囲を指定できます。両端を含む範囲には角括弧 [min TO max] を使用し、両端を含まない範囲には波括弧 {min TO max} を使用します。 波括弧と角括弧は、同じ範囲式内で組み合わせて使用できます。範囲内でワイルドカードを使用することもできます。 たとえば、2018 年 12 月 18 日から現在までのすべてのログを検索するには、q=date:[2018-12-18 TO *] を使用します。 保持期間の開始から 2018 年 12 月 19 日まで (ただしその日は含まない) のログを検索するには、q=date:[* TO 2018-12-19} を使用します。

クエリの例

以下に、 で実行できるクエリの例をいくつか示します。
ユースケースクエリ
接続に “Pass” を含むすべてのログを検索するconnection:*pass*
ユーザー名に “fred” を含むユーザーのすべてのログを検索するuser_name:*fred*
ユーザー ID が “123” と完全一致するすべてのログを検索するuser_id:"123"
type が “s” で始まるすべてのログを検索するtype:s*
”jane” で始まり “smith” で終わるユーザー名を検索するuser_name:jane*smith
2018 年 12 月のすべてのログを検索するdate:[2018-12 TO 2019-01-01}
2018 年 12 月 10 日以降のすべてのログを検索するdate:[2018-12-10 TO *]
2019 年 1 月 1 日午前 1 時から 2019 年 1 月 1 日 12:23:45 まで (この時刻は含まない) のすべてのログを検索するdate:[2019-01-01T01:00:00 TO 2019-01-01T12:23:45}

制限事項

  • 414 Request-URI Too Large エラーが発生した場合は、クエリ文字列がサポートされている長さを超えていることを意味します。この場合は、検索条件を絞り込んでください。
  • ログフィールドはトークン化されないため、description:rule は値が Create a ruleUpdate a rule である description には一致しません。代わりに description:*rule を使用してください。詳細は、ワイルドカードと完全一致を参照してください。
  • .raw フィールド拡張はサポートされていません。フィールドは指定された値全体に対して一致し、トークン化はされません。
include_totals パラメーターを指定して GET /api/v2/logs または GET /api/v2/users/{user_id}/logs エンドポイントを呼び出すと、結果の概要と要求したログを含む JSON オブジェクトが返されます。JSON オブジェクトは次のようになります。
{
  "length": 5,
  "limit": 5,
  "logs": [...],
  "start": 0,
  "total": 5
}
ログを検索する際、totals フィールドはそのページで返されるログの件数を示します (length フィールドが返す値と同様です) 。

詳細情報