データの照会

IBM Cloud Logsでは、Lucene 照会、 DataPrime 照会を使用するか、 IBM Cloud Object Storage (COS) バケットから直接データを照会することによって、ログ・データを照会できます。 照会にフィルターを適用することもできます。

UI からのデータの照会

ログの探索 」ページでは、以下を行うことができます。

フィルタリングは、 Lucene または DataPrime を使用した検索と組み合わせて使用できます。

照会を定義した後、ビューを作成することによって、後で再利用するためにその照会を保存することができます。 詳しくは、 カスタム・ビューの作成 を参照してください。

バケットからデータを照会する際の考慮事項

「エクスプローラー・ログ」ページから、またはアーカイブ照会を実行することによって、データを照会できます。

データ・バケットからログ・データを照会する際には、以下の考慮事項があります。

  • データバケットに格納されるデータには、優先順位の洞察 分析とアラート 保管および検索データパイプラインを通して取り込まれたデータが含まれる。 また、ライブテールでブロックされたログを表示し、IBM Cloud Object Storageにアーカイブするオプションが有効になっている解析ブロックルールによってマッチングされたログも含まれます。
  • バケット内のデータを維持します。 必要な期間だけデータを保持し、 「ログ」 ページで 「すべてのログ」 オプションを選択して照会することができます。
  • フィルタリングは、 Lucene または DataPrime を使用した検索と組み合わせて使用できます。
  • 無制限の時間フレームでデータを照会できます。 データをどこまで遡ることができるかについての制限はありません。 データを保守し、そのデータを保持している限り、そのデータへのアクセス権限を取得します。
  • ログの優先順位および日次割り当て量に関係なく、ログを照会できます。 ブロックされたログのみがアーカイブに送信されません。
  • 「照会のアーカイブ」を使用すると、任意のテキストまたは幅広い構文照会を使用して、アーカイブから直接ログを照会することができます。 ログの優先順位、日次割り当て量、またはデータの時間フレームに関係なく、ログを照会できます。 詳しくは、 アーカイブ・データの照会 を参照してください。

Explorer を使用したデータの照会の制限

IBM® Cloud Logsでデータを照会するときには制限があります。

照会の制限

クエリー内の文字

クエリーに含めることができる文字数には制限があります。

  • ログビューのクエリに含めることができる最大文字数は3000文字です。

  • アラートクエリー定義には、最大65,535文字を含めることができます。 アラート・クエリー定義も、 AND および OR ステートメントが最大50個に制限されている。

キーワードの種類

キーワードは、インデックス作成前にアナライザーを通過しないテキストを表す。 このデータ型は正規表現、集計、ソートに適している。

クエリでキーワード・データ型を使用する構文は次のとおりです: <fieldName>.keyword.

IBM Cloud Logs フィールドが256文字より長い場合、キーワード・タイプを作成することはできません。

返される結果

照会から返される行の最大数は、 優先順位の洞察 から照会するか、 IBM Cloud Object Storageに保管されているデータを照会するかによって異なります。

  • 優先順位の洞察 から返される結果の最大数は 12 K です。
  • IBM Cloud Object Storage ( すべてのログを使用したクエリ)から返される結果の最大数は50 Kです。

スキャンされたバイト数

優先順位の洞察 データについて、最大 100 MB がスキャンされます。 IBM Cloud Object Storage に保管されているデータがスキャンされる場合、制限はありません。

速度制限

1 分当たり最大 10 個の照会を実行依頼できます。

レート制限を超えると、 HTTP 429 が返される。

アーカイブ照会の制限

以下に、照会に適用される制限を示します。

アーカイブ・クエリの制限
制限 説明
処理済みバイト数 1 日あたりの取り込みバイト数の最大 30%
Parquet ファイル 最大 500K 個のファイルがスキャンされました
結果の複製 アーカイブ照会の実行中に最大 1M 件の結果
タイムアウト 最大 5 分間の照会実行

アーカイブ・データを照会する際には、以下の点にも注意する必要があります。

  • 「照会のアーカイブ」 ページでは、同じ照会構文 (Lucene または DataPrime) を使用できます。

  • 他の Explore 照会と比較すると、アーカイブ・データの照会時に若干の遅延が発生する可能性があります。

  • 制限に達すると、警告メッセージが表示されます。 制限に達しないように、照会結果を絞り込んでください。

アーカイブ照会結果の詳細化

以下の方法を使用して、照会結果を絞り込むことができます。

  • より選択的なフィルターを照会 (例えば、アプリケーションまたはサブシステム) に適用します。

  • DataPrime extract 演算子を使用して結果をフィルタリングする場合は、代わりに解析ルールを作成し、解析対象フィールドでフィルタリングします。

  • フィルターでは正規表現またはワイルドカードを使用しないでください。

  • データプライム 文字列のcontains演算子の使用からフリーテキスト検索演算子(~ )。

CLIを使ってログデータを照会する

CLIを使ってログデータを照会するには、2つの方法がある:

  • query
  • background-query-create

background-query-create コマンドは非同期クエリーを実行し、 query は同期クエリーを実行する。

バックグラウンド・クエリでは、クエリを実行し、後の時点で結果を取得することができます。 クエリー結果は準備され、準備ができたらCLIまたはAPIを使って結果をファイルとしてダウンロードできる。

バックグラウンド・クエリでは、最大 1M。 query コマンドは、 50K レコードを返すように制限されている。

Query CLIは、出力として logs-rawlogs-prettifyjson のみをサポートしている。 デフォルトはlogs-rawです。

同期クエリの実行

コマンドを実行すれば、同期的にログデータを照会できる。 ibmcloud logs query コマンドを実行する。

ibmcloud logs query --query QUERY --syntax QUERY_SYNTAX --metadata '{"start_date": START-DATE, "end_date": c, "syntax": SYNTAX , "limit": LIMIT, "strict-fields-validation": STRICT-FIELDS-VALIDATION, "tier": TIER}'

または

ibmcloud logs query --query QUERY --syntax QUERY_SYNTAX --start-date START-DATE --end-date END-DATE --syntax SYNTAX --limit 10

コマンド・オプション

--query (文字列)

実行するクエリ。 これは必須パラメーターです。

クエリの構文は Lucene または Dataprime のいずれかを使用する。 クエリーの構文やタイプは、 --syntax パラメーターで設定する。

--metadata (文字列)

クエリ実行のメタデータ。 この設定を使用して、クエリ実行パラメータを指定します。

--start-date (文字列)

クエリの開始時間。 これは UTC ISO 8601 フォーマットでなければならない、例えば: 2025-07-15T08:45:00Z。 デフォルトは --end-date の15分前。 --end-date が指定されない場合、デフォルト値は現在時刻の15分前となる。

--end-date (文字列)

クエリの時間範囲の終了。 これは UTC ISO 8601 フォーマットでなければならない、例えば: 2025-07-15T08:45:00Z。 デフォルトは、 --start-date の値から15分後。 --start-date が定義されていない場合、 --end-date は現在時刻、 --start-date は現在時刻の15分前となる。

--limit (int)

返されるレコードの数を制限する。 指定しない場合、デフォルトは2000である。 優先順位の洞察、返されるレコードの最大数は12000である。 そうでない場合、返されるレコードの最大数は50000である。

--syntax (文字列)

クエリを記述する構文。 許容値は lucenedataprime

--since 期間

データ照会時に現在時刻から遡る期間。 このフラグを使うと、 metadata-start-datemetadata-end-date が上書きされる。 例えば、 1h は過去1時間のデータを検索する(デフォルトは 1h0m0s )。

--tier (文字列)

クエリが実行される階層。 許容値は以下の通り: archive frequent_search ( 優先順位の洞察 ).

--output (文字列)

結果を返す出力フォーマット。 有効な値は logs-rawlogs-prettifyjson である。

ibmcloud logs query --query "Push and Query test" --metadata '{"start_date": "2025-06-16T12:00:00Z", "end_date": "2025-06-17T13:41:30Z","syntax": "lucene"}' --output logs-raw

query コマンドは、 metadata パラメータ外の --start-date--end-date--syntax もサポートしている。 以下に例を示します。

ibmcloud logs query --query "source logs | filter \$d.text == 'Push and Query test'" --syntax dataprime --start-date 2025-08-03T12:00:00Z  --end-date 2025-08-04T13:41:30Z

バックグラウンドクエリの実行

ログデータを非同期で問い合わせることができる。

まず、経歴照会書を提出する。 そして、そのIDを他のコマンドで使うことができる。

 ibmcloud logs background-query-create --query QUERY --syntax SYNTAX [--start-date START-DATE] [--end-date END-DATE] [--now-date NOW-DATE]

コマンド・オプション

--query (文字列)

実行するクエリ。 これは必須パラメーターです。

クエリの構文は Lucene または Dataprime のいずれかを使用する。 クエリーの構文やタイプは、 --syntax パラメーターで設定する。

--syntax (文字列)

クエリを記述する構文。 許容値は lucenedataprime

--start-date (文字列)

クエリの開始時間。 これは UTC ISO 8601 フォーマットでなければならない、例えば: 2025-07-15T08:45:00Z。 デフォルトは --end-date の15分前。 --end-date が指定されない場合、デフォルト値は現在時刻の15分前となる。

--end-date (文字列)

クエリの時間範囲の終了。 これは UTC ISO 8601 フォーマットでなければならない、例えば: 2025-07-15T08:45:00Z。 デフォルトは、 --start-date の値から15分後。 --start-date が定義されていない場合、 --end-date は現在時刻、 --start-date は現在時刻の15分前となる。

ibmcloud logs background-query-create --query "Push and Query test" --syntax lucene --start-date 2025-06-16T12:00:00Z --end-date 2025-06-17T13:41:30Z

DataPrime 構文を使用した例

ibmcloud logs background-query-create --query "source logs | filter \$d.text == 'Push and Query test'" --syntax dataprime --start-date 2025-08-03T12:00:00Z

バックグラウンド・クエリのステータスの決定

バックグラウンド クエリ コマンドの実行時に返される ID を使用して、 バックグラウンド クエリ のステータスを判別できます。

ibmcloud logs background-query-status --query-id QUERY-ID

コマンド・オプション

--query-id (strfmt.UUID)

バックグラウンドクエリーコマンドから 返されたクエリーID。 必須。

値の長さは36文字で、正規表現 /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/ にマッチしなければならない。

ibmcloud logs background-query-status --query-id 8b5e7151-da2b-4633-be8c-9b269bed2c81

バックグラウンドクエリの結果の取得

バックグラウンド クエリ コマンドの実行時に返される ID を使用して、 バックグラウンド クエリ のクエリ結果を取得できます。

ibmcloud logs background-query-data --query-id QUERY-ID --output OUTPUT

コマンド・オプション

--query-id (strfmt.UUID)

バックグラウンドクエリーコマンドから 返されたクエリーID。 必須。

値の長さは36文字で、正規表現 /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/ にマッチしなければならない。

--output-file (文字列)

出力を書き込むファイルへのパスを指定する。

--output (文字列)

結果を返す出力フォーマット。 有効な値は logs-raw, logs-prettify, json, yaml, tui, または table です。 デフォルトは table です。

ibmcloud logs background-query-data --query-id df47fff7-131d-41dc-9328-05489a93e27c --output logs-raw

バックグラウンドクエリのキャンセル

バックグラウンド クエリ コマンドの実行時に返される ID を使用して、バック グラウンド クエリ をキャンセルできます。

ibmcloud logs background-query-cancel --query-id QUERY-ID --force

コマンド・オプション

--query-id (strfmt.UUID)

バックグラウンドクエリーコマンドから 返されたクエリーID。 必須。

値の長さは36文字で、正規表現 /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/ にマッチしなければならない。

--force|-f

ユーザーへのプロンプトを表示せずにコマンドを実行する。

ibmcloud logs background-query-cancel --query-id df47fff7-131d-41dc-9328-05489a93e27c