OpenSearch データソースに接続する - Amazon Managed Grafana

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

OpenSearch データソースに接続する

注記

バージョン 9 以降をサポートするワークスペースでは、このデータソースで適切なプラグインのインストールが必要になる場合があります。詳細については、「プラグインを使用してワークスペースを拡張する」を参照してください。

Amazon Managed Grafana では、データソースとしてオープンソース OpenSearch (またはレガシー Elasticsearch) を追加できます。に保存されているログやメトリクスを視覚化するには、さまざまなタイプの単純な OpenSearch クエリまたは複雑なクエリを実行できます OpenSearch。に保存されたログイベントでグラフに注釈を付けることもできます OpenSearch。

をデータソース OpenSearch として追加する

注記

OpenSearch データソースを追加するには、Grafana IAM アカウントを ALL_ACCESS ロールと SECURITY_MANAGER ロールに追加する必要があります。

  1. 上部のヘッダーにある Grafana アイコンを選択して、サイドメニューを開きます。

  2. ダッシュボードリンクのサイドメニューには、名前付きデータソースリンクがあります。

  3. 上部のヘッダーで + データソースの追加ボタンを選択します。

  4. タイプドロップダウンリストから OpenSearchを選択します。

注記

サイドメニューにデータソースリンクが表示されない場合は、現在のユーザーに Adminロールがないことを意味します。

名前 説明
Name データソース名。これは、パネルとクエリでデータソースを表示する方法です。
Default デフォルトのデータソースは、新しいパネルに対して事前に選択されることを意味します。
Url OpenSearch サーバーの HTTP プロトコル、IP、およびポート。
Access サーバー (デフォルト) = URL は Grafana バックエンド/サーバーからアクセス可能である必要があります。ブラウザ = URL はブラウザからアクセスできる必要があります。

アクセスモードは、データソースへのリクエストの処理方法を制御します。他に何も記載されていない場合は、サーバーが推奨される方法です。

サーバーアクセスモード (デフォルト)

すべてのリクエストはブラウザから Grafana バックエンドまたはサーバーに対して行われ、リクエストはデータソースに転送され、Cross-Origin Resource Sharing (CORS) の要件を回避します。このアクセスモードを選択した場合、URL は Grafana バックエンドまたはサーバーからアクセス可能である必要があります。

ブラウザ (直接) アクセス

Amazon Managed Grafana は、データソースへの OpenSearchブラウザの直接アクセスをサポートしていません。

インデックス設定

ここでは、 のデフォルトを指定time fieldし、 OpenSearch インデックスの名前を指定できます。インデックス名またはワイルドカード文字に時間パターンを使用できます。

OpenSearch/Elasticsearch バージョン

バージョンドロップダウンメニューで、 OpenSearch またはレガシーの Elasticsearch バージョンを指定します。バージョンごとにクエリの構成方法が異なるため、 バージョンは重要です。現在、Grafana は OpenSearch 1.0.x をサポートしています。Elasticsearch でサポートされているバージョンは2.0+、、5.0+5.6+6.0+、および です7.0+。値は、バージョン 5.6 以降で 6.0 より小さい5.6+ことを意味します。値は、バージョン 6.0 以降、7.0 未満6.0+を意味します。最後に、 7.0+はバージョン 7.0 以降で、8.0 より前のことを意味します。

最小時間間隔

時間間隔による自動グループの下限。書き込み頻度に設定することをお勧めします。例えば、データが 1 分ごとに書き込まれる1m場合などです。このオプションは、データソースオプションのダッシュボードパネルで上書き/設定することもできます。この値は、 (1 分) や (30s30 秒) など、1m有効な時間識別子が続く数値としてフォーマットする必要があります。次の時間識別子がサポートされています。

識別子 説明
y
M
w
d
h 時間
m
s
ms ミリ秒

ログ

Message field name と の 2 つのパラメータはLevel field name、オプションでデータソース設定ページから設定できます。このページでは、 でログを視覚化するときにログメッセージとログレベルに使用するフィールドを決定します探索

例えば、 へのログの配信に Filebeat のデフォルト設定を使用する場合 OpenSearch、次の設定が機能します。

  • メッセージフィールド名: message

  • レベルフィールド名: fields.level

データリンクは、Explore のログビューでアクセスできる指定されたフィールドからリンクを作成します。

各データリンク設定は、以下で構成されます。

  • フィールド – データリンクで使用されるフィールドの名前。

  • URL/クエリ – リンクが外部の場合は、リンク URL 全体を入力します。リンクが内部リンクの場合、この入力はターゲットデータソースのクエリとして機能します。いずれの場合も、${__value.raw }マクロを使用して フィールドから値を補間できます。

  • 内部リンク — リンクが内部または外部である場合に選択します。リンクが内部リンクの場合、データソースセレクタを使用すると、ターゲットデータソースを選択できます。トレースデータソースのみがサポートされています。

OpenSearch データソースの使用

メトリクスクエリエディタ

OpenSearch クエリエディタを使用すると、複数のメトリクスを選択し、複数の用語またはフィルターでグループ化できます。右側のプラスアイコンとマイナスアイコンを使用して、メトリクスまたはグループを句で追加/削除します。一部のメトリクスとグループバイ句にはオプションがあります。オプションテキストを選択して行を展開し、メトリクスまたはグループをオプション別に表示および編集します。

シリーズの命名パターンとエイリアスパターン

Alias 入力フィールドを使用して時系列の名前を制御できます。

パターン 説明
{{term fieldname}} Group By という用語の値に置き換えました。
{{metric}} メトリクス名 (例: 平均、最小、最大)。
{{field}} をメトリクスフィールド名に置き換えました。

パイプラインメトリクス

一部のメトリクス集約はパイプライン集約と呼ばれます。例えば、移動平均派生 などです。 OpenSearch パイプラインメトリクスには、別のメトリクスに基づく必要があります。メトリクスの横にある目のアイコンを使用して、メトリクスがグラフに表示されないようにします。これは、パイプラインメトリクスで使用するクエリにのみあるメトリクスに役立ちます。

テンプレート

メトリクスクエリでサーバー、アプリケーション、センサー名などのモノをハードコーディングする代わりに、代わりに変数を使用できます。変数は、ダッシュボードの上部にドロップダウン選択ボックスとして表示されます。これらのドロップダウンボックスを使用して、ダッシュボードに表示されるデータを変更できます。

テンプレート変数とテンプレート変数の詳細については、「」を参照してくださいテンプレートと変数

クエリ変数

OpenSearch データソースは、Query 変数の Query フィールドで使用できる 2 種類のクエリをサポートしています。クエリはカスタム JSON 文字列を使用して記述されます。

Query 説明
{"find": "fields", "type": "keyword"} インデックスタイプ のフィールド名のリストを返しますkeyword
{"find": "terms", "field": "@hostname", "size": 1000} 用語集約を使用してフィールドの値のリストを返します。クエリは、現在のダッシュボードの時間範囲をクエリの時間範囲として使用します。
{"find": "terms", "field": "@hostname", "query": '<lucene query>'} 用語集約と指定された Lucene クエリフィルターを使用して、フィールドの値のリストを返します。クエリは、現在のダッシュボードの時間範囲をクエリの時間範囲として使用します。

用語クエリにはデフォルトのサイズ制限 500 があります。カスタム制限を設定するには、クエリで size プロパティを設定します。クエリ内で他の変数を使用できます。次のコード例は、 という名前の変数のクエリ定義を示しています$host

{"find": "terms", "field": "@hostname", "query": "@source:$source"}

前の例では、クエリ定義$source内で という名前の別の変数を使用します。$source 変数の現在の値を変更するたびに、ドロップダウンリストから$host変数の更新が開始されます。更新後、 $host変数には、 によってフィルタリングされたホスト名のみが含まれます。この場合、 @sourceドキュメントプロパティです。

これらのクエリは、デフォルトでは語順で返されます (その後、任意の変数と同様にアルファベット順または数値順にソートできます)。ドキュメント数でソートされた語句のリスト (上位 N 個の値リスト) を生成するには、 のorderByプロパティを追加しますdoc_count。これにより、降順のソートが自動的に選択されます。doc_count (最下位 N リスト) ascで を使用するには、 を設定しますがorder: "asc"、ドキュメント数のエラーが増加するため推奨されません。ドキュメントカウントの順序で語句を保持するには、変数のソートドロップダウンリストを無効に設定します。または、アルファベットを使用して再ソートすることもできます。

{"find": "terms", "field": "@hostname", "orderBy": "doc_count"}

クエリでの変数の使用

次の 2 つの構文があります。

  • $<varname> 例: @hostname:$hostname

  • [[varname]] 例: @hostname:[[hostname]]

2 つの方法があるのはなぜですか? 最初の構文は読み書きが容易ですが、単語の途中で変数を使用することは許可されません。複数値またはすべての値を含めるオプションが有効になっている場合、Grafana はラベルをプレーンテキストから Lucene 互換の条件に変換します。

前の例では、 という名前の変数を使用して @hostnameプロパティに基づいてドキュメントをフィルタリングする Lucene クエリがあります$hostname。また、フィールド入力による用語グループの変数を使用しています。これにより、変数を使用してデータのグループ化方法をすばやく変更できます。

‏注釈

注釈を使用すると、グラフの上に豊富なイベント情報をオーバーレイできます。ダッシュボードメニューまたは注釈ビューを使用して注釈クエリを追加します。Grafana は、任意の OpenSearch インデックスに注釈イベントをクエリできます。詳細については、「‏注釈」を参照してください。

名前 説明
Query 検索クエリは空白のままにすることも、Lucene クエリを指定することもできます。
Time 時間フィールドの名前。 は日付フィールドである必要があります。
Time End 時間終了フィールドのオプション名は日付フィールドである必要があります。設定されている場合、注釈は時間と終了の間のリージョンとしてマークされます。
Text イベントの説明フィールド。
Tags イベントタグに使用するオプションのフィールド名 (配列または CSV 文字列を使用できます)。

ログのクエリ

からのログデータのクエリと表示 OpenSearch については、Explore を参照してください。ログを表示するには、 OpenSearch データソースを選択し、オプションで Lucene クエリを入力します。詳細については、「探索」を参照してください。

ログクエリ

結果が返されると、ログパネルにはログ行のリストと棒グラフが表示されます。X 軸には時刻、Y 軸には頻度またはカウントが表示されます。

ログメッセージのフィルタリング

必要に応じて、クエリフィールドに Lucene クエリを入力して、ログメッセージをフィルタリングします。例えば、デフォルトの Filebeat 設定を使用すると、 fields.level:errorを使用してエラーメッセージのみを表示できます。