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

効率的な検索クエリの作成

100,000 件の検索結果が検出されると、検索は自動的に一時停止されます。効率的なクエリを使用することで、この制限の回避に役立ちます。

検索をできるだけ選択的にする

クエリを具体的にするほど、不要なメッセージがすぐに対象から除外されるため、クエリが効率的に実行されるようになります。たとえば、次の 2 つのクエリは同じ結果を生成します。

  • * | parse regex "uid=(?<userId>\d+)"
  • "uid=" | parse regex "uid=(?<userId>\d+)"

2 番目のクエリの方が、より効率的に結果を返します。最初のクエリには「*」が含まれており、Sumo Logic に、指定された時間範囲のすべてのメッセージをまとめて表示するよう要求するためです。

フィールド抽出ルールを使用する

管理者がフィールド抽出ルールを作成済みの場合には、そのルールの使用方法について確認してください。フィールド抽出ルールによって、組織のログ ファイルのフィールドがパースされるため、クエリでフィールドをパースする必要はありません。

最も選択性の高いフィルタを先に記述する

最も選択的なフィルタを先に使用して、クエリのできるだけ早い段階でデータをフィルタすることをお勧めします。

たとえば、次のクエリを参照してください。

  • * | parse "queryTime=* " as queryTime | parse "uid=* " as uid | where queryTime > 10000
  • * | parse "queryTime=* " as queryTime | where queryTime > 10000 | parse "uid=* " as uid

ほとんどのログ行には uid がありますが、queryTime > 10000 が記述されているのはごく一部に限られるため、2 番目のクエリの方が効率的です。

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