概要

AWS AppSync は、1 つ以上のデータソースのデータに安全にアクセス、操作、結合するための柔軟な API の作成を可能にして、アプリケーション開発を簡略化します。

このインテグレーションを有効にすると、Datadog にすべての AppSync メトリクスを表示できます。

セットアップ

インストール

Amazon Web Services インテグレーションをまだセットアップしていない場合は、最初にセットアップします。

メトリクスの収集

  1. AWS インテグレーションページで、Metric Collection タブの下にある AppSync が有効になっていることを確認します。
  2. Datadog - AWS AppSync インテグレーションをインストールします。

収集データ

ログの有効化

AWS AppSync から S3 バケットまたは CloudWatch のいずれかにログを送信するよう構成します。

: S3 バケットにログを送る場合は、Target prefixamazon_appsync に設定されているかを確認してください。

ログを Datadog に送信する方法

  1. Datadog Forwarder Lambda 関数をまだセットアップしていない場合は、セットアップします。

  2. Lambda 関数がインストールされたら、AWS コンソールから、AWS AppSync ログを含む S3 バケットまたは CloudWatch ロググループに手動でトリガーを追加します。

収集データ

メトリクス

aws.appsync.4xxerror
(count)
The number of errors captured as a result of invalid requests due to incorrect client configuration.
Shown as error
aws.appsync.5xxerror
(count)
Errors encountered during the execution of a GraphQL query.
Shown as error
aws.appsync.active_connections
(count)
The number of concurrent WebSocket connections from clients to AWS AppSync in 1 minute.
aws.appsync.active_subscriptions
(count)
The number of concurrent subscriptions from clients in 1 minute.
aws.appsync.broadcast_delayed_events
(count)
The number of delayed broadcast events.
Shown as event
aws.appsync.broadcast_dropped_events
(count)
The number of dropped broadcast events.
Shown as event
aws.appsync.broadcast_event_client_error
(count)
The number of events that failed to broadcast because of client-side errors.
Shown as event
aws.appsync.broadcast_event_server_error
(count)
The number of errors that originated from AWS AppSync while broadcasting events.
Shown as error
aws.appsync.broadcast_event_size
(count)
The size of events broadcast.
Shown as byte
aws.appsync.broadcast_event_success
(count)
The number of events that were successfully broadcast to subscribers.
Shown as event
aws.appsync.cache_hit
(count)
The total number of cache hits during a requests. This will only be emitted if a cache is used. Cache hits are recorded on a per-resolver basis.
Shown as hit
aws.appsync.cache_miss
(count)
The total number of cache misses during requests. This will only be emitted if a cache is used. Cache misses are recorded on a per-resolver basis.
Shown as miss
aws.appsync.connect_client_error
(count)
The number of WebSocket connections that were rejected by AWS AppSync because of client-side errors. This could imply that the service is throttled or the Authorization settings are misconfigured.
Shown as error
aws.appsync.connect_requests
(count)
The number of WebSocket connection requests made to AWS AppSync, including both successful and unsuccessful attempts.
Shown as request
aws.appsync.connect_server_error
(count)
The number of errors that originated from AWS AppSync while processing connections. This is known to happen when an unexpected server-side issue occurs.
Shown as error
aws.appsync.connect_success
(count)
The number of successful WebSocket connections to AWS AppSync. It is possible to have connections without subscriptions.
Shown as success
aws.appsync.connection_duration
(count)
The amount of time that the connection stays open.
Shown as millisecond
aws.appsync.disconnect_client_error
(count)
The number of client errors that originated from AWS AppSync while disconnecting WebSocket connections.
Shown as error
aws.appsync.disconnect_server_error
(count)
The number of server errors that originated from AWS AppSync while disconnecting WebSocket connections.
Shown as error
aws.appsync.disconnect_success
(count)
The number of successful WebSocket disconnections from AWS AppSync.
Shown as success
aws.appsync.dropped_events
(count)
The count of input events filtered by a OnPublish handler.
Shown as event
aws.appsync.failed_events
(count)
The count of input events that encountered error during processing.
Shown as event
aws.appsync.graphql_error
(count)
The number of GraphQL errors that occurred.
Shown as error
aws.appsync.inbound_messages
(count)
The number of inbound metered events.
Shown as message
aws.appsync.inbound_message_delayed
(count)
The number of delayed inbound messages. Inbound messages can be delayed when either the inbound message rate quota or outbound message rate quota is breached.
Shown as message
aws.appsync.inbound_message_dropped
(count)
The number of dropped inbound messages. Inbound messages can be dropped when either the inbound message rate quota or outbound message rate quota is breached.
Shown as message
aws.appsync.inbound_message_error
(count)
The number of inbound messages that failed processing due to invalid API requests, such as exceeding the 240 kB subscription payload size limit.
Shown as message
aws.appsync.inbound_message_failure
(count)
The number of inbound messages that failed processing due to errors from AWS AppSync.
Shown as message
aws.appsync.inbound_message_success
(count)
The number of inbound messages successfully processed. Each subscription type invoked by a mutation generates one inbound message.
Shown as message
aws.appsync.invalidation_request_dropped
(count)
The number of invalidation requests dropped when the invalidation request quota was exceeded.
Shown as request
aws.appsync.invalidation_request_error
(count)
The number of invalidation requests that failed processing due to invalid API requests.
Shown as request
aws.appsync.invalidation_request_failure
(count)
The number of invalidation requests that failed processing due to errors from AWS AppSync.
Shown as request
aws.appsync.invalidation_request_success
(count)
The number of invalidation requests successfully processed.
Shown as request
aws.appsync.invalidation_success
(count)
The number of subscriptions successfully invalidated (unsubscribed).
aws.appsync.latency
(gauge)
The average time between when AWS AppSync receives a request from a client and when it returns a response to the client. This doesn’t include the network latency encountered for a response to reach the end devices.
Shown as millisecond
aws.appsync.latency.maximum
(gauge)
The maximum time between when AWS AppSync receives a request from a client and when it returns a response to the client. This doesn’t include the network latency encountered for a response to reach the end devices.
Shown as millisecond
aws.appsync.latency.p90
(gauge)
The 90th percentile time between when AWS AppSync receives a request from a client and when it returns a response to the client. This doesn’t include the network latency encountered for a response to reach the end devices.
Shown as millisecond
aws.appsync.outbound_messages
(count)
The number of metered messages successfully published.
Shown as message
aws.appsync.publish_data_message_client_error
(count)
The number of subscription event messages that failed to publish because of client-side errors.
Shown as error
aws.appsync.publish_data_message_server_error
(count)
The number of errors that originated from AWS AppSync while publishing subscription event messages. This is known to happen when an unexpected server-side issue occurs.
Shown as error
aws.appsync.publish_data_message_size
(gauge)
The size of subscription event messages published.
Shown as byte
aws.appsync.publish_data_message_success
(count)
The number of subscription event messages that were successfully published.
Shown as success
aws.appsync.publish_handler_invocations
(count)
The number of OnPublish handler invocations.
aws.appsync.requests
(count)
The number of requests (queries + mutations) that all APIs in your account have processed.
Shown as request
aws.appsync.subscribe_client_error
(count)
The number of subscriptions that were rejected by AWS AppSync because of client-side errors. This can occur when a JSON payload is incorrect, the service is throttled, or the Authorization settings are misconfigured.
Shown as error
aws.appsync.subscribe_handler_invocations
(count)
The number of Subscribe handlers invoked.
aws.appsync.subscribe_server_error
(count)
The number of errors that originated from AWS AppSync while processing subscriptions. This is known to happen when an unexpected server-side issue occurs.
Shown as error
aws.appsync.subscribe_success
(count)
The number of subscriptions that were successfully registered to AWS AppSync through WebSocket. It is possible to have connections without subscriptions, but it isn’t possible to have subscriptions without connections.
Shown as success
aws.appsync.successful_events
(count)
The count of input events that were processed successfully and submitted for broadcast in the OnPublish handler.
Shown as event
aws.appsync.tokens_consumed
(count)
The number of tokens allocated to processed requests.
Shown as token
aws.appsync.unsubscribe_client_error
(count)
The number of unsubscriptions that were rejected by AWS AppSync because of client-side errors.
Shown as error
aws.appsync.unsubscribe_server_error
(count)
The number of errors that originated from AWS AppSync while processing unsubscriptions. This is known to happen when an unexpected server-side issue occurs.
Shown as error
aws.appsync.unsubscribe_success
(count)
The number of unsubscriptions that were successfully processed from AWS AppSync.
Shown as success

イベント

AWS AppSync インテグレーションには、イベントは含まれません。

サービスチェック

AWS AppSync インテグレーションには、サービスのチェック機能は含まれません。

トラブルシューティング

ご不明な点は、Datadog のサポートチームまでお問合せください。