OpenSearchとElasticsearchのスローログが未設定

性能分析に必要な検索・インデックス作成のスローログを設定してください。

説明

Amazon OpenSearch Serviceの検索・インデックス作成のスローログは、設定したしきい値を超える処理の調査に役立ちます。ログの公開とドメインのしきい値設定の両方が必要で、監査ログの代わりにはなりません。

想定される影響

スローログがないと、時間のかかる検索やインデックス作成の原因を特定しにくくなることがあります。

対処方法

LogPublishingOptionsで必要なSEARCH_SLOW_LOGSとINDEX_SLOW_LOGSを有効にし、CloudWatch Logsのロググループと書き込み権限を設定してください。ドメインにも適切なスローログのしきい値を設定してください。

例

既存のAWS::Elasticsearch::Domainリソースでログ公開を有効にする例です。AWS::OpenSearchService::Domainにも同じ設定を適用できます。ロググループのポリシーとしきい値は省略しています。

変更前

yaml
AWSTemplateFormatVersion: "2010-09-09"
Description: スローログ公開の例
Resources:
  ElasticsearchDomain:
    Type: "AWS::Elasticsearch::Domain"
    Properties:
      DomainName:
        Ref: DomainName
      LogPublishingOptions:
        SEARCH_SLOW_LOGS:
          CloudWatchLogsLogGroupArn: >-
            arn:aws:logs:us-east-1:123456789012:log-group:/aws/aes/domains/es-slow-logs
          Enabled: "false"
        INDEX_SLOW_LOGS:
          CloudWatchLogsLogGroupArn: >-
            arn:aws:logs:us-east-1:123456789012:log-group:/aws/aes/domains/es-index-slow-logs
          Enabled: "false"

変更後

yaml
AWSTemplateFormatVersion: "2010-09-09"
Description: スローログ公開の例
Resources:
  ElasticsearchDomain:
    Type: "AWS::Elasticsearch::Domain"
    Properties:
      DomainName:
        Ref: DomainName
      LogPublishingOptions:
        SEARCH_SLOW_LOGS:
          CloudWatchLogsLogGroupArn: >-
            arn:aws:logs:us-east-1:123456789012:log-group:/aws/aes/domains/es-slow-logs
          Enabled: "true"
        INDEX_SLOW_LOGS:
          CloudWatchLogsLogGroupArn: >-
            arn:aws:logs:us-east-1:123456789012:log-group:/aws/aes/domains/es-index-slow-logs
          Enabled: "true"

参考資料