ログ - Amazon OpenSearch Service

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ログ

OpenSearch Ingestion は、取り込み中に非構造化ログデータを構造化形式に変換できます。OpenSearch Ingestion には、インデックスを作成する前にデータを正規化して強化するプロセッサが用意されています。便利なプロセッサの例は次のとおりです。

  • grok – ウェブサーバーアクセスログなどの非構造化テキストデータを個別のフィールドに解析して構造化します。

  • date – ログフィールドから日付を解析し、イベントのタイムスタンプとして設定します。

  • parse_json – JSON オブジェクトを含む文字列フィールドを解析します。

– 開始を容易にするために、Amazon OpenSearch Service コンソールにログ用の新しい開始方法ワークフローを作成しました。これにより、新しい Otel カスタマイズされた取り込みパイプラインがセットアップされ、既存の OpenSearch クラスターにポイントされ、オブザーバビリティワークスペースが作成された新しい OpenSearch UI アプリケーションが作成されます。必要なのは、Otel エージェントを新しい取り込みエンドポイントに向けることだけです。

OpenSearch UI とオブザーバビリティワークスペース

ログデータが Amazon OpenSearch Service に取り込まれたら、OpenSearch UI の Amazon OpenSearch Service オブザーバビリティワークスペースが提供するツールを使用して分析します。オブザーバビリティワークスペースは、Discover と Dashboards で有意義なインサイトを抽出するために設計された特殊なツールを提供します。

オブザーバビリティワークスペースには、Amazon Q Developer for Business を搭載した自然言語アシスタントで補完されたパイプ処理言語 (PPL) を使用する新しい Discover エクスペリエンスが付属しています。言語支援により、誰でも簡単にパイプ言語の使用を開始できます。クエリを改良したら、ツールの他の部分にジャンプすることなく、新しい Discover から直接視覚化とダッシュボードを作成します。DQL または SQL を使用してデータをクエリするには、古い Discover エクスペリエンスに切り替えます。

PPL を使用したログのクエリ

ログをクエリして、アプリケーションまたはサービスのオペレーションに関するインサイトを収集するには、いくつかのオプションがあります。

パイプ処理言語 (PPL) は、コマンドを連鎖するためのパイプベースの (|) 構文を持つクエリ言語です。これを使用して、ログを分析するための強力な式を構築できます。

: OpenSearch 2.19 で新しい PPL コマンド/関数をロック解除するには、次のクエリを使用して OpenSearch Developer Tools の機能フラグを変更する必要があります (OpenSearch 3.3 では必須ではありません)。

PUT /_plugins/_query/settings { "transient" : { "plugins.calcite.enabled" : true } }

エラーが最も多いホストを検索する

この例では、ログを分析して、エラーの合計が最も多いサービスホストを特定します。

source = my-index | where level = "ERROR" | stats count() as error_count by host | sort -error_count | head 5

平均リクエスト時間を計算する

この例では、ログを分析して、ログ内の各ステータスコードの平均リクエスト時間を計算します。

source = my-index | stats avg(request_time) by status_code

PPL の詳細については、opensearch.org の PPL リファレンスマニュアルを参照してください。

AI を使用したログのクエリ

この例では、ログを分析して、過去 5 分間に記録されたエラーを表示します。

Show me all of the error logs from the last 5 minutes

SQL を使用したログのクエリ

SQL は、ログデータをクエリするための使い慣れた方法を提供します。

この例では、ログを分析してタイムスタンプ別にエラーを表示します。

SELECT timestamp, severity_text, body, service_name FROM opentelemetry_logs WHERE severity_text = 'ERROR' AND service_name = 'my-service' ORDER BY timestamp DESC;

SQL の詳細については、GitHub の SQL リファレンスマニュアルを参照してください。

DQL を使用したログのクエリ

DQL は、迅速な検索とフィルタリングに適しています。

この例では、ログを分析し、エラーと例外を返します。

error OR exception

DQL の詳細については、opensearch.org の DQL リファレンスマニュアルを参照してください。

ログのダッシュボードとアラート

PPL の新しい Discover エクスペリエンスでは、Discover 内の視覚化タブから視覚化を作成できます。12 種類の視覚化タイプから選択し、ダッシュボードに追加する前にその場で編集します。古い Discover エクスペリエンスでは、左側のナビゲーションで Visualize を参照して新しいビジュアライゼーションを作成し、Dashboards を参照してダッシュボードにビジュアライゼーションを追加します。

PPL または OpenSearch Service クエリ DSL を使用してアラートモニターを定義し、スケジュールされたクエリを実行できます。特定の数のエラーログなどのトリガー条件がアラートを発生させます。Amazon Simple Notification Service やウェブフックなどのチャネルを介して通知を送信できます。

アラートの詳細については、opensearch.org のアラートドキュメントを参照してください。