

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

# Grafana の接続
<a name="connecting-telemetry-sources-connecting-grafana"></a>

Grafana 統合により、 AWS DevOps Agent はインシデント調査中に Grafana インスタンスからメトリクス、ダッシュボード、アラートデータをクエリできます。この統合は、Grafana のアカウントレベルの登録と、個々のエージェントスペースへの接続という 2 つのステップのプロセスに従います。

セキュリティを向上させるために、Grafana 統合は読み取り専用ツールのみを有効にします。書き込みツールは無効になっており、有効にすることはできません。つまり、エージェントは Grafana インスタンスからデータをクエリおよび読み取ることができますが、ダッシュボード、アラート、注釈などの Grafana リソースを作成、変更、または削除することはできません。詳細については、「[Security in AWS DevOps Agent](https://docs.aws.amazon.com/devopsagent/latest/userguide/aws-devops-agent-security.html)」を参照してください。

## Grafana の要件
<a name="grafana-requirements"></a>

Grafana を接続する前に、以下を確認してください。
+ Grafana バージョン 9.0 以降。一部の機能、特にデータソース関連のオペレーションは、API エンドポイントがないため、以前のバージョンでは正しく動作しない場合があります。
+ HTTPS 経由でアクセス可能な Grafana インスタンス。パブリックネットワークエンドポイントとプライベートネットワークエンドポイントの両方がサポートされています。プライベートネットワーク接続では、Grafana インスタンスをパブリックインターネットアクセスなしで VPC 内でホストできます。詳細については、「[プライベートにホストされたツールへの接続](configuring-capabilities-for-aws-devops-agent-connecting-to-privately-hosted-tools.md)」を参照してください。
+ 適切な読み取りアクセス許可を持つアクセストークンを持つ Grafana サービスアカウント

## Grafana の登録 (アカウントレベル)
<a name="registering-grafana-account-level"></a>

Grafana は AWS アカウントレベルで登録され、そのアカウントのすべてのエージェントスペース間で共有されます。

### ステップ 1: Grafana を設定する
<a name="step-1-configure-grafana"></a>

1.  AWS マネジメントコンソールにサインインする

1.  AWS DevOps エージェントコンソールに移動する

1. **機能プロバイダー**ページに移動する (サイドナビゲーションからアクセス可能)

1. Telemetry の**「利用可能な**プロバイダー」セクションで **Grafana** を検索し、**登録**をクリックします **** 

1. **Grafana の設定**ページで、次の情報を入力します。
   + **サービス名** (必須) – 英数字、ハイフン、アンダースコアのみを使用して、Grafana サーバーのわかりやすい名前を入力します。例えば、`my-grafana-server`。
   + **Grafana URL** (必須) – Grafana インスタンスの完全な HTTPS URL を入力します。例えば、`https://myinstance.grafana.net`。
   + **サービスアカウントアクセストークン** (必須) – Grafana サービスアカウントアクセストークンを入力します。トークンは通常、 で始まります`glsa_`。サービスアカウントトークンを作成するには、Grafana インスタンスに移動し、**管理 > サービスアカウント**に移動し、ビューワーロールを使用してサービスアカウントを作成し、トークンを生成します。
   + **説明** (オプション) – サーバーの目的を特定するのに役立つ説明を追加します。例えば、`Production Grafana server for monitoring`。

1. (オプション) 組織の目的で登録に AWS タグを追加します。

1. **[次へ]** をクリックします。

### ステップ 2: Grafana 登録を確認して送信する
<a name="step-2-review-and-submit-grafana-registration"></a>

1. Grafana 設定の詳細をすべて確認する

1. **送信**をクリックして登録を完了します

1. 登録が成功すると、Grafana は機能プロバイダーページの**現在登録**されているセクションに表示されます。

## エージェントスペースへの Grafana の追加
<a name="adding-grafana-to-an-agent-space"></a>

アカウントレベルで Grafana を登録したら、個々のエージェントスペースに接続できます。

1.  AWS DevOps エージェントコンソールで、エージェントスペースを選択します。

1. **機能**タブに移動する

1. **テレメトリ**セクションで、**追加** をクリックします。

1. 利用可能なプロバイダーのリストから **Grafana** を選択する

1. **保存 **をクリックします。

## Grafana アラートウェブフックの設定
<a name="configuring-grafana-alert-webhooks"></a>

Grafana コンタクトポイントを介してウェブフックを送信することで、アラートが発生したときに AWS DevOps エージェント調査を自動的にトリガーするように Grafana を設定できます。ウェブフック認証方法と認証情報管理の詳細については、「」を参照してください[Webhook による DevOps エージェントの呼び出し](configuring-capabilities-for-aws-devops-agent-invoking-devops-agent-through-webhook.md)。

### ステップ 1: カスタム通知テンプレートを作成する
<a name="step-1-create-a-custom-notification-template"></a>

Grafana インスタンスで、**アラート > コンタクトポイント > 通知テンプレート**に移動し、次の内容の新しいテンプレートを作成します。

```
{{ define "devops-agent-payload" }}
{
  "eventType": "incident",
  "incidentId": "{{ (index .Alerts 0).Labels.alertname }}-{{ (index .Alerts 0).Fingerprint }}",
  "action": "{{ if eq .Status "resolved" }}resolved{{ else }}created{{ end }}",
  "priority": "{{ if eq .Status "resolved" }}MEDIUM{{ else }}HIGH{{ end }}",
  "title": "{{ (index .Alerts 0).Labels.alertname }}",
  "description": "{{ (index .Alerts 0).Annotations.summary }}",
  "service": "{{ if (index .Alerts 0).Labels.job }}{{ (index .Alerts 0).Labels.job }}{{ else }}grafana{{ end }}",
  "timestamp": "{{ (index .Alerts 0).StartsAt }}",
  "data": {
    "metadata": {
      {{ range $k, $v := (index .Alerts 0).Labels }}
      "{{ $k }}": "{{ $v }}",
      {{ end }}
      "_source": "grafana"
    }
  }
}
{{ end }}
```

このテンプレートは、Grafana アラートを AWS DevOps Agent が期待するウェブフックペイロード構造にフォーマットします。アラートラベル、注釈、ステータスを適切なフィールドにマッピングし、すべてのアラートラベルをメタデータとして含めます。

**注:** このテンプレートは、グループ内の最初のアラートのみを処理します。Grafana は、デフォルトで複数の発射アラートを 1 つの通知にグループ化します。各アラートが個別に送信されるようにするには、 でグループ化するように通知ポリシーを設定します`alertname`。さらに、このテンプレートはラベル値または注釈の特殊な JSON 文字をエスケープしません。アラートラベルと`summary`注釈に二重引用符や改行などの文字が含まれていないことを確認すると、無効な JSON が生成されます。

### ステップ 2: ウェブフックコンタクトポイントを作成する
<a name="step-2-create-a-webhook-contact-point"></a>

1. Grafana でアラート **> コンタクトポイント**に移動し、**コンタクトポイントの追加**をクリックします

1. 統合タイプとして **Webhook** を選択する

1.  AWS DevOps Agent ウェブフックエンドポイントへの **URL** の設定

1. **オプションのウェブフック設定**で、ウェブフックタイプに基づいて認証ヘッダーを設定します。詳細については、[「Webhook 認証方法](configuring-capabilities-for-aws-devops-agent-invoking-devops-agent-through-webhook.md)」を参照してください。

1. カスタムテンプレートを使用するように **Message** フィールドを設定します。 `{{ template "devops-agent-payload" . }}`

1. **コンタクトポイントの保存** をクリックします。

### ステップ 3: コンタクトポイントを通知ポリシーに割り当てる
<a name="step-3-assign-the-contact-point-to-a-notification-policy"></a>

1. **アラート > 通知ポリシー**に移動する

1. 既存のポリシーを編集するか、新しいポリシーを作成します。

1. 作成したウェブフックコンタクトポイントにコンタクトポイントを設定する

1. **ポリシーの保存** をクリックします。

一致するアラートが発生すると、Grafana はフォーマットされたペイロードを AWS DevOps エージェントに送信し、これにより自動的に調査が開始されます。

## 制限事項
<a name="limitations"></a>
+ **ClickHouse データソースツール** – ClickHouse データソースツールは現在サポートされていません。
+ **プロアクティブインシデント防止** – は現在 Grafana ツールを使用し[プロアクティブインシデント防止](working-with-devops-agent-proactive-incident-prevention.md)ません。サポートは今後のリリースが予定されています。

### Amazon Managed Grafana に関する考慮事項
<a name="amazon-managed-grafana-considerations"></a>

[Amazon Managed Grafana](https://aws.amazon.com/grafana/) (AMG) を使用している場合は、次の制限に注意してください。
+ **Webhook コンタクトポイントはサポートされていません** – AMG は現在、アラート設定で Webhook コンタクトポイントをサポートしていません。AMG を使用してアラートウェブフックを AWS DevOps エージェントに直接送信することはできません。詳細については、[「Amazon Managed Grafana でのコンタクトポイントのアラート](https://docs.aws.amazon.com/grafana/latest/userguide/v9-alerting-explore-contacts.html)」を参照してください。
+ **サービスアカウントトークンの有効期限** – AMG サービスアカウントトークンの最大有効期限は 30 日です。トークンをローテーションし、有効期限が切れる前に AWS DevOps Agent で Grafana 登録を更新する必要があります。認証情報を更新する方法については、[「Grafana 接続の管理](#managing-grafana-connections)」を参照してください。AMG トークンの制限の詳細については、[「Amazon Managed Grafana のサービスアカウント](https://docs.aws.amazon.com/grafana/latest/userguide/service-accounts.html)」を参照してください。

## Grafana 接続の管理
<a name="managing-grafana-connections"></a>
+ **認証情報の更新** – サービスアカウントトークンの有効期限が切れるか、更新する必要がある場合は、機能プロバイダーページから Grafana を登録解除し、新しいトークンに再登録します。
+ **接続されたインスタンスの表示** – AWS DevOps エージェントコンソールで、エージェントスペースを選択し、機能タブに移動して、接続されたテレメトリソースを表示します。
+ **Grafana の削除** – エージェントスペースから Grafana を切断するには、テレメトリセクションでそれを選択し、**削除**をクリックします。登録を完全に削除するには、まずすべてのエージェントスペースから削除してから、機能プロバイダーページから登録を解除します。