アーカイブからのデータの直接照会

関連するフレームワークおよび必要なスキーマによって提供される標準の Apache Parquet リーダーでサード・パーティー・フレームワークを使用して、 IBM Cloud Logs アーカイブを照会できます。

アーカイブ・フォルダーの構造

IBM Cloud Logs アーカイブ・データは、以下のパーティション・フィールドを持つ標準 hive のようなパーティションに保管されます。

team_id=<team-id>: IBM Cloud Logs Team ID
dt=YYYY-MM-DD: Date of the data in UTC
hr=HH: Hour of the data in UTC

これらのフィールドは、フレームワーク内で仮想列として定義でき、照会でフィルターとして使用できます。

以下のことに注意すること:

  • dthr は両方とも、イベント・タイム・スタンプに基づいています。
  • team_id=<team-id> 区画では、同じバケットおよび接頭部を再利用して、複数の IBM Cloud Logs チームからデータを書き込み、それらを 1 つの照会で照会することができます。

フィールド

各 Apache Parquet ファイルには、JSON 形式のストリングとしてデータを持つ以下の 3 つのフィールドがあります。

  • src_obj__event_metadata: イベントに関連するメタデータを含む JSON オブジェクト。
  • src_obj__event_labels: イベントのラベルが含まれている JSON オブジェクト ( IBM Cloud Logs applicationName および subsystemName など)。
  • src_obj__user_data: 実際のイベント・データを含む JSON オブジェクト。

以下は src_obj__event_metadata の例である:

{
  "timestamp": "2022-03-28T08:50:57.946",
  "severity": "Debug",
  "priorityclass": "low",
  "logid": "some-uuid"
}

以下は src_obj__event_labels の例である:

{
  "applicationname": "some-app",
  "subsystemname": "some-subsystem",
  "category": "some-category",
  "classname": "some-class",
  "methodname": "some-method",
  "computername": "some-computer",
  "threadid": "some-thread-id",
  "ipaddress": "some-ip-address"
}

以下は src_obj__user_data の例である:

{
  "_container_id": "0f099482cf3b507462020e9052516554b65865fb761af8e076735312772352bf",
  "host": "ip-10-1-11-144",
  "short_message": "10.1.11.144 - - [28/Mar/2022:08:50:57 +0000] \\"GET /check HTTP/1.1\\" 200 16559 \\"-\\" \\"Consul Health Check\\" \\"-\\""
}

アーカイブのクエリーと解析

IBM Cloud Logs アーカイブクエリ機能を使用すると、インデックスが作成されていないデータであっても、Lucene、 DataPrime,、正規表現クエリ構文を使用してアーカイブから直接ログをクエリできます。 分析とアラート および 保管および検索 パイプラインにより 多くのデータを保存し、 IBM Cloud Logs リアルタイム分析およびリモート・ストレージ検索機能を活用することができます。 つまり、保存期間を短くしても、すべてのデータを迅速に照会できるのだ。

アーカイブ照会は、 IBM Cloud Logs で設定したアーカイブに対して実行され、すべての TCO ロギング・レベルで使用可能です。 例えば、 分析とアラート パイプラインのログを優先しても、インデックスを作成せずにクエリを実行できる。 また、 LiveTail,、 優先順位の洞察 パイプラインに送信されるデータよりも少ないコストで、リアルタイムのアラートと異常の通知を受け取り、解析ルール、ログの集約、メトリクスへのイベントを使用することができます。