AWSインテグレーションのトラブルシューティング

Splunk Observability CloudのAWSポリシー、権限の競合、その他の問題を解決します。

Splunk Observability CloudをAmazon Web Services (AWS)アカウントに接続する際、またはプラットフォームを使用する際に問題が発生する場合、一般的な問題をトラブルシューティングするために続きをお読みください。

以下のドキュメントも参照してください:

問題が解決しない場合は Splunk Observability Cloud サポートに問い合わせることもできます。

注意: Splunk はデータの可用性について責任を負わず、接続してからアカウントから有効なデータが表示されるようになるまで最大数分 (設定によってはそれ以上) かかることがあります。

AWS 接続の検証エラー

先ほど設定した接続の自動検証の試みが失敗し、Splunk Observability Cloud と AWS アカウント間が接続されていません。これには、400 エラーコードのある失敗した API コールが含まれる可能性があります。

原因

AWSインテグレーションが無効なIAM(Identity Access Management)ポリシーを使用しているか、必要な権限の一部が欠けているために、接続に失敗する可能性があります。

AWS 組織のサービス コントロール ポリシーまたは IAM エンティティの権限の境界を使用している場合、Splunk Observability Cloud への接続に使用している AWS IAM ポリシーに影響を与える可能性があります。

解決策

必要な権限」の説明に従って、AWS アカウントを Splunk Observability Cloud に接続するために必要なすべてのポリシーが含まれていることを確認します。必要な権限は接続方法(ポーリングまたは Metric Streams)によって異なり、タグの収集には特定の権限が必要であることに注意してください。

また、使用している AWS 組織のポリシーと境界を確認する必要があります。

Splunk Observability Cloud が期待どおりに動作しない

Splunk Observability Cloud 内の機能またはツールが期待どおりに動作しません。

原因

AWS に接続した後、Splunk Observability Cloud の機能が期待どおりに動作しない場合は、AWS IAM ポリシーにおいてその機能に対する権限が存在しないか、導入をブロックしている可能性があります。たとえば、ec2:DescribeRegions は、アカウントで有効な AWS リージョンを検出するために使用されます。その権限がない場合、またはリージョンが指定されていない場合、システム設定はデフォルトで AWS 標準リージョンになります。予期しない問題を回避するために、リージョンフィールドに入力することを推奨します。詳細については、「AWS 認証と対応リージョン」を参照してください。

メトリクスの収集も、設定したアクセス許可に依存します。

解決策

IAM ポリシーを見直し、収集する予定のメトリックまたはその他のデータに必要な権限が含まれていることを確認します。

Amazon Web Services との統合が完了すると、Splunk Observability Cloud は CloudWatch メトリック、CloudWatch Metric Streams、または Amazon S3 バケットに保存されたサービスログ、サービスタグとプロパティ情報を収集できます。しかし、統合の全機能を活用するには、含まれているすべての権限が必要です。

特定の名前空間のメトリクスとタグが表示されない

特定の名前空間のメトリクスとタグが期待どおりに表示されません。

原因

AWS 組織のサービス コントロール ポリシーまたは IAM エンティティの権限の境界を使用している場合、Splunk Observability Cloud への接続に使用している AWS IAM ポリシーに影響を与える可能性があります。

Splunk Observability Cloud と AWS 間のインテグレーションをセットアップする際にデフォルトの IAM ポリシーを変更した場合、IAM ポリシーには元のインテグレーションに必要ないとして削除された名前空間がリストされず、その結果、Splunk Observability Cloud はそれらの名前空間のメトリクスを無視します。

解決策

使用している AWS 組織のポリシーと境界を確認します。

また、監視するメトリクスを確実に表示するには、以下の手順を実行します:

  1. Splunk Observability Cloud API を使用して AWS に接続する」で示されているデフォルトの IAM ポリシーを確認し、必要な名前空間のエントリを見つけます。

  2. 欠落しているエントリを AWS IAM ファイルに追加します。詳細については、AWS アイデンティティとアクセス管理のドキュメントで「IAM ポリシーを編集する」を検索してください。

AWS CloudwatchとSplunk Observability Cloudのメトリクスの間の不一致

AWS CloudwatchとSplunk Observability Cloudのメトリクスの間に不一致が見られます。

原因の不一致には主に2つの原因があります:

原因1:メトリクスが安定していない

一部の CloudWatch メトリックは安定していません。つまり、CloudWatch によって公開された初期メトリック値がしばらくしてから更新される可能性があります。Splunk Observability Cloud は同じデータポイントを 2 回取得することがないため、値の不一致が発生する可能性があります。

解決策 1

この問題を軽減するために、最新のデータポイントの数(通常は 1 または 2)を無視するように選択した名前空間を設定することができます。これらの設定変更を導入するには、Splunk Observability Cloud のサポートにお問い合わせください。

原因2:チャートが異なる時系列を使ってプロットされている

AWS CloudwatchとSplunk Observability Cloudは、チャートをプロットするために異なる時系列セットを使用している可能性があります。

解決策 2

AWS Cloudwatch メトリックの中には、さまざまなディメンションセットでレポートされるものがあるので、AWS Cloudwatch と Splunk Observability Cloud の両方で同じデータセットを使用していることを確認してください。

ステータスチェックのメトリクスが見つからない

ステータスチェックに関連するメトリクスが見つかりません。

原因

デフォルトでは、AWS CloudWatchのコストとSplunk Observability Cloudのシステム使用量を削減するため、ステータスチェックメトリクスは有効化されていません。

解決策

インテグレーションのステータスメトリクスをアクティブにします。

そのためには、以下の手順に従ってください:

  1. API からインテグレーションオブジェクトを取得します:

    curl --request GET https://api.<realm>.signalfx.com/v2/integration?type=AWSCloudWatch&offset=0&limit=50&orderBy=-lastUpdated
    --header "X-SF-TOKEN:" \
    --header "Content-Type:application/json" > integration.json

    次と類似したものが表示されます。

    {
       "count": 2,
       "results": [
          {
             "authMethod": "ExternalId",
             "created": 1674862496869,
             "createdByName": null,
             "creator": "E-tkECKAsAA",
             "customCloudWatchNamespaces": null,
             "enableAwsUsage": true,
             "enableCheckLargeVolume": true,
             "enabled": false,
             "externalId": "fyprhjmtpxttxwqhotep",
             "id": "integration-id",
             "importCloudWatch": true,
             "largeVolume": false,
             "lastUpdated": 1674862497253,
             "lastUpdatedBy": "E-tkECKAsAA",
             "lastUpdatedByName": "John Smith",
             "name": "AWS Dev",
             "pollRate": 300000,
             "regions": [ "us-east-1", "us-east-2", "us-west-1", "us-west-2" ],
             "roleArn": null,
             "services": [],
             "sfxAwsAccountArn": "arn:aws:iam::134183635603:root",
             "syncCustomNamespacesOnly": false,
             "syncLoadBalancerTargetGroupTags": false,
             "type": "AWSCloudWatch"
          },
          {
             "authMethod": "ExternalId",
             "created": 1522297476849,
             "createdByName": null,
             "creator": "CGa4fY-AoAA",
             "customCloudWatchNamespaces": null,
             "enableAwsUsage": true,
             "enableCheckLargeVolume": false,
             "enabled": true,
             "externalId": "uoejtvhsjnbcbdbfvbhg",
             "id": "DZTsWRwAkAA",
             "importCloudWatch": false,
             "largeVolume": false,
             "lastUpdated": 1671440367214,
             "lastUpdatedBy": "CGa4fY-AoAA",
             "lastUpdatedByName": "John Doe",
             "name": "AWS Prod",
             "pollRate": 300000,
             "regions": [ "us-east-1", "us-east-2", "us-west-1", "us-west-2" ],
             "roleArn": "arn:aws:iam::123456789012:role/splunk-o11y-role",
             "services": [],
             "sfxAwsAccountArn": "arn:aws:iam::134183635603:root",
             "syncCustomNamespacesOnly": false,
             "type": "AWSCloudWatch"
          }
       ]
    }
  2. ステップ 3 と 4 で説明したように、インテグレーションファイルを修正します。

  3. 以下のフィールドは自動的に入力されるため、呼び出しから削除してください:

    ``created``
    ``createdByName``
    ``creator``
    ``lastUpdated``
    ``lastUpdatedBy``
    ``lastUpdatedByName``
  4. false に設定した ignoreAllStatusMetrics を統合に含めます。これは次のようになります。

    {
       "authMethod": "ExternalId",
       "customCloudWatchNamespaces": null,
       "enableAwsUsage": true,
       "enableCheckLargeVolume": true,
       "enabled": false,
       "externalId": "fyprhjmtpxttxwqhotep",
       "id": "integration-id",
       "ignoreAllStatusMetrics": false,
       "importCloudWatch": true,
       "largeVolume": false,
       "name": "AWS Dev",
       "pollRate": 300000,
       "regions": [ "us-east-1", "us-east-2", "us-west-1", "us-west-2" ],
       "roleArn": null,
       "services": [],
       "sfxAwsAccountArn": "arn:aws:iam::134183635603:root",
       "syncCustomNamespacesOnly": false,
       "syncLoadBalancerTargetGroupTags": false,
       "type": "AWSCloudWatch"
    }
  5. APIを使用して上記のインテグレーションオブジェクトを更新します:

    curl --request PUT https://api.<realm>.signalfx.com/v2/integration/<integration-id>
    --header "X-SF-TOKEN:" \
    --header "Content-Type:application/json" \
    --data "@integration.json"
  6. StatusCheckFailed は常に無視されますが、ステータス情報を得るために、他の2つのステータスチェックメトリクス、StatusCheckFailed_InstanceStatusCheckFailed_System を組み合わせることができるようになりました。

    AWSのステータスチェックメトリクスの詳細については、AWSの公式ドキュメントを参照してください。