第12章 JSON ロギングの有効化


ログ転送 API を設定して、構造化されたオブジェクトに対して JSON 文字列を解析できます。

12.1. JSON ログの解析

JSON ログなどのログは、通常 message フィールド内の文字列として表されます。これにより、JSON ドキュメント内の特定のフィールドをクエリーすることが困難になります。OpenShift Logging のログ転送 API を使用すると、JSON ログを構造化オブジェクトに解析し、それらを OpenShift Logging が管理する Elasticsearch またはログ転送 API でサポートされる他のサードパーティーシステムに転送できます。

以下の構造化された JSON ログエントリーがあると想定して、これがどのように機能するか説明します。

構造化された JSON ログエントリーの例

{"level":"info","name":"fred","home":"bedrock"}

通常、ClusterLogForwarder カスタムリソース (CR) は、そのログエントリーを message フィールドに転送します。message フィールドには、以下の例のように JSON ログエントリーと同等の JSON 引用符で囲まれた文字列が含まれます。

message フィールドの例

{"message":"{\"level\":\"info\",\"name\":\"fred\",\"home\":\"bedrock\"",
 "more fields..."}

JSON ログの解析を有効にするには、以下の例のように、parse: jsonClusterLogForwarder CR のパイプラインに追加します。

parse: json を示すスニペット例

pipelines:
- inputRefs: [ application ]
  outputRefs: myFluentd
  parse: json

parse: json を使用して JSON ログの解析を有効にすると、以下の例のように CR は 構造化 フィールドに JSON-structured ログエントリーをコピーします。元の message フィールドは変更されません。

構造化された JSON ログエントリーを含む 構造化された 出力例

{"structured": { "level": "info", "name": "fred", "home": "bedrock" },
 "more fields..."}

重要

ログエントリーに有効な構造化された JSON が含まれていない場合に、構造化された フィールドはなくなります。

特定のロギングプラットフォームの JSON ログの解析を有効にするには、ログのサードパーティーシステムへの転送 を参照してください。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.