ステップ 1: OpenSearch Service との統合を作成する - Amazon CloudWatch Logs

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

ステップ 1: OpenSearch Service との統合を作成する

最初のステップでは、OpenSearch Service との統合を作成します。これを行う必要があるのは 1 回だけです。統合を作成すると、アカウントに次のリソースが作成されます。

必要なアクセス許可

統合を作成するには、CloudWatchOpenSearchDashboardsFullAccess マネージド IAM ポリシーまたは同等のアクセス許可を持つアカウントにサインインする必要があります。統合の削除、ダッシュボードの作成、編集、削除、ダッシュボードの手動更新を行うには、これらのアクセス許可も必要です。

JSON
{ "Version": "2012-10-17", "Statement": [{ "Sid": "CloudWatchOpenSearchDashboardsIntegration", "Effect": "Allow", "Action": [ "logs:ListIntegrations", "logs:GetIntegration", "logs:DeleteIntegration", "logs:PutIntegration", "logs:DescribeLogGroups", "opensearch:ApplicationAccessAll", "iam:ListRoles", "iam:ListUsers" ], "Resource": "*" }, { "Sid": "CloudWatchLogsOpensearchReadAPIs", "Effect": "Allow", "Action": [ "aoss:BatchGetCollection", "aoss:BatchGetLifecyclePolicy", "es:ListApplications" ], "Resource": "*", "Condition": { "StringEquals": { "aws:CalledViaFirst": "logs.amazonaws.com" } } }, { "Sid": "CloudWatchLogsOpensearchCreateServiceLinkedAccess", "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "arn:aws:iam::*:role/aws-service-role/opensearchservice.amazonaws.com/AWSServiceRoleForAmazonOpenSearchService", "Condition": { "StringEquals": { "iam:AWSServiceName": "opensearchservice.amazonaws.com", "aws:CalledViaFirst": "logs.amazonaws.com" } } }, { "Sid": "CloudWatchLogsObservabilityCreateServiceLinkedAccess", "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "arn:aws:iam::*:role/aws-service-role/observability.aoss.amazonaws.com/AWSServiceRoleForAmazonOpenSearchServerless", "Condition": { "StringEquals": { "iam:AWSServiceName": "observability.aoss.amazonaws.com", "aws:CalledViaFirst": "logs.amazonaws.com" } } }, { "Sid": "CloudWatchLogsCollectionRequestAccess", "Effect": "Allow", "Action": [ "aoss:CreateCollection" ], "Resource": "*", "Condition": { "StringEquals": { "aws:CalledViaFirst": "logs.amazonaws.com", "aws:RequestTag/CloudWatchOpenSearchIntegration": [ "Dashboards" ] }, "ForAllValues:StringEquals": { "aws:TagKeys": "CloudWatchOpenSearchIntegration" } } }, { "Sid": "CloudWatchLogsApplicationRequestAccess", "Effect": "Allow", "Action": [ "es:CreateApplication" ], "Resource": "*", "Condition": { "StringEquals": { "aws:CalledViaFirst": "logs.amazonaws.com", "aws:RequestTag/OpenSearchIntegration": [ "Dashboards" ] }, "ForAllValues:StringEquals": { "aws:TagKeys": "OpenSearchIntegration" } } }, { "Sid": "CloudWatchLogsCollectionResourceAccess", "Effect": "Allow", "Action": [ "aoss:DeleteCollection" ], "Resource": "*", "Condition": { "StringEquals": { "aws:CalledViaFirst": "logs.amazonaws.com", "aws:ResourceTag/CloudWatchOpenSearchIntegration": [ "Dashboards" ] } } }, { "Sid": "CloudWatchLogsApplicationResourceAccess", "Effect": "Allow", "Action": [ "es:UpdateApplication", "es:GetApplication" ], "Resource": "*", "Condition": { "StringEquals": { "aws:CalledViaFirst": "logs.amazonaws.com", "aws:ResourceTag/OpenSearchIntegration": [ "Dashboards" ] } } }, { "Sid": "CloudWatchLogsCollectionPolicyAccess", "Effect": "Allow", "Action": [ "aoss:CreateSecurityPolicy", "aoss:CreateAccessPolicy", "aoss:DeleteAccessPolicy", "aoss:DeleteSecurityPolicy", "aoss:GetAccessPolicy", "aoss:GetSecurityPolicy" ], "Resource": "*", "Condition": { "StringLike": { "aoss:collection": "cloudwatch-logs-*", "aws:CalledViaFirst": "logs.amazonaws.com" } } }, { "Sid": "CloudWatchLogsAPIAccessAll", "Effect": "Allow", "Action": [ "aoss:APIAccessAll" ], "Resource": "*", "Condition": { "StringLike": { "aoss:collection": "cloudwatch-logs-*" } } }, { "Sid": "CloudWatchLogsIndexPolicyAccess", "Effect": "Allow", "Action": [ "aoss:CreateAccessPolicy", "aoss:DeleteAccessPolicy", "aoss:GetAccessPolicy", "aoss:CreateLifecyclePolicy", "aoss:DeleteLifecyclePolicy" ], "Resource": "*", "Condition": { "StringLike": { "aoss:index": "cloudwatch-logs-*", "aws:CalledViaFirst": "logs.amazonaws.com" } } }, { "Sid": "CloudWatchLogsDQSRequestQueryAccess", "Effect": "Allow", "Action": [ "es:AddDirectQueryDataSource" ], "Resource": "arn:aws:opensearch:*:*:datasource/cloudwatch_logs_*", "Condition": { "StringEquals": { "aws:CalledViaFirst": "logs.amazonaws.com", "aws:RequestTag/CloudWatchOpenSearchIntegration": [ "Dashboards" ] }, "ForAllValues:StringEquals": { "aws:TagKeys": "CloudWatchOpenSearchIntegration" } } }, { "Sid": "CloudWatchLogsStartDirectQueryAccess", "Effect": "Allow", "Action": [ "opensearch:StartDirectQuery", "opensearch:GetDirectQuery" ], "Resource": "arn:aws:opensearch:*:*:datasource/cloudwatch_logs_*" }, { "Sid": "CloudWatchLogsDQSResourceQueryAccess", "Effect": "Allow", "Action": [ "es:GetDirectQueryDataSource", "es:DeleteDirectQueryDataSource" ], "Resource": "arn:aws:opensearch:*:*:datasource/cloudwatch_logs_*", "Condition": { "StringEquals": { "aws:CalledViaFirst": "logs.amazonaws.com", "aws:ResourceTag/CloudWatchOpenSearchIntegration": [ "Dashboards" ] } } }, { "Sid": "CloudWatchLogsPassRoleAccess", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "*", "Condition": { "StringLike": { "iam:PassedToService": "directquery.opensearchservice.amazonaws.com", "aws:CalledViaFirst": "logs.amazonaws.com" } } }, { "Sid": "CloudWatchLogsAossTagsAccess", "Effect": "Allow", "Action": [ "aoss:TagResource" ], "Resource": "arn:aws:aoss:*:*:collection/*", "Condition": { "StringEquals": { "aws:CalledViaFirst": "logs.amazonaws.com", "aws:ResourceTag/CloudWatchOpenSearchIntegration": [ "Dashboards" ] }, "ForAllValues:StringEquals": { "aws:TagKeys": "CloudWatchOpenSearchIntegration" } } }, { "Sid": "CloudWatchLogsEsApplicationTagsAccess", "Effect": "Allow", "Action": [ "es:AddTags" ], "Resource": "arn:aws:opensearch:*:*:application/*", "Condition": { "StringEquals": { "aws:ResourceTag/OpenSearchIntegration": [ "Dashboards" ], "aws:CalledViaFirst": "logs.amazonaws.com" }, "ForAllValues:StringEquals": { "aws:TagKeys": "OpenSearchIntegration" } } }, { "Sid": "CloudWatchLogsEsDataSourceTagsAccess", "Effect": "Allow", "Action": [ "es:AddTags" ], "Resource": "arn:aws:opensearch:*:*:datasource/*", "Condition": { "StringEquals": { "aws:ResourceTag/CloudWatchOpenSearchIntegration": [ "Dashboards" ], "aws:CalledViaFirst": "logs.amazonaws.com" }, "ForAllValues:StringEquals": { "aws:TagKeys": "CloudWatchOpenSearchIntegration" } } } ] }

統合を作成する

以下のステップを使用して統合を作成します。

CloudWatch Logs を と統合するには Amazon OpenSearch Service
  1. CloudWatch コンソールの https://console.aws.amazon.com/cloudwatch/ を開いてください。

  2. 左側のナビゲーションペインで、Logs Insights を選択し、OpenSearch で分析タブを選択します。

  3. [統合を作成する] を選択します。

  4. [統合名] に、統合の名前を入力します。

  5. (オプション) OpenSearch Service Serverless に書き込まれたデータを暗号化するには、KMS AWS KMS キー ARN で使用するキーの ARN を入力します。 詳細については、「Amazon OpenSearch Service デベロッパーガイド」の「保管時の暗号化」を参照してください。

  6. データ保持には、OpenSearch Service データインデックスを保持する時間を入力します。これは、ダッシュボードでデータを表示できる最大期間も定義します。データ保持期間を長くすると、追加の検索とインデックス作成のコストが発生します。詳細については、OpenSearch Service Serverless の料金」を参照してください。

    最大保持期間は 30 日間です。

    データ保持期間の長さは、OpenSearch Service コレクションのライフサイクルポリシーの作成にも使用されます。

  7. OpenSearch コレクションに書き込む IAM ロールの場合は、新しい IAM ロールを作成するか、OpenSearch Service コレクションへの書き込みに使用する既存の IAM ロールを選択します。

    新しいロールの作成が最も簡単な方法です。ロールは必要なアクセス許可で作成されます。

    注記

    ロールを作成すると、アカウント内のすべてのロググループから読み取るアクセス許可が付与されます。

    既存のロールを選択する場合は、 に記載されているアクセス許可が必要です統合に必要なアクセス許可。または、既存のロールを使用するを選択し、選択したロールのアクセス許可の検証セクションでロールの作成を選択します。これにより、 にリストされているアクセス許可をテンプレート統合に必要なアクセス許可として使用して変更できます。たとえば、ロググループのよりきめ細かな制御を指定する場合です。

  8. ダッシュボードを表示できる IAM ロールとユーザーの場合、販売ログダッシュボードアクセスのために IAM ロールと IAM ユーザーへのアクセスを許可する方法を選択します。

    • ダッシュボードへのアクセスを一部のユーザーのみに制限するには、ダッシュボードを表示できる IAM ロールとユーザーの選択を選択し、テキストボックスでアクセスを許可する IAM ロールと IAM ユーザーを検索して選択します。

    • ダッシュボードへのアクセス権をすべてのユーザーに付与するには、このアカウントのすべてのロールとユーザーにダッシュボードの表示を許可するを選択します。

      重要

      ロールまたはユーザーを選択するか、すべてのユーザーを選択すると、ダッシュボードデータを保存する OpenSearch Service コレクションにアクセスするために必要なデータアクセスポリシーにのみ追加されます。 OpenSearch 販売者が販売されたログダッシュボードを表示できるようにするには、それらのロールとユーザーに CloudWatchOpenSearchDashboardAccessマネージド IAM ポリシーも付与する必要があります。

  9. 統合の作成を選択する

    統合の作成には数分かかります。