アーカイブからのデータの直接照会
関連するフレームワークおよび必要なスキーマによって提供される標準の 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
これらのフィールドは、フレームワーク内で仮想列として定義でき、照会でフィルターとして使用できます。
以下のことに注意すること:
dtとhrは両方とも、イベント・タイム・スタンプに基づいています。team_id=<team-id>区画では、同じバケットおよび接頭部を再利用して、複数の IBM Cloud Logs チームからデータを書き込み、それらを 1 つの照会で照会することができます。
フィールド
各 Apache Parquet ファイルには、JSON 形式のストリングとしてデータを持つ以下の 3 つのフィールドがあります。
src_obj__event_metadata: イベントに関連するメタデータを含む JSON オブジェクト。src_obj__event_labels: イベントのラベルが含まれている JSON オブジェクト ( IBM Cloud LogsapplicationNameおよび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,、 優先順位の洞察 パイプラインに送信されるデータよりも少ないコストで、リアルタイムのアラートと異常の通知を受け取り、解析ルール、ログの集約、メトリクスへのイベントを使用することができます。