AWS AppSync 监控集成
AWS AppSync 是一项托管服务,使用 GraphQL 接口简化应用程序开发流程。它提供灵活的 API,可整合来自多个来源的数据,以构建可扩展的应用程序。
该服务还允许终端用户在系统离线时实时更新数据,并在恢复连接后同步更改。

使用场景
AWS AppSync 整合来自一个或多个来源的数据,包括 AWS DynamoDB、AWS Lambda 和 HTTP API。假设您有一个 DynamoDB 数据源附加到与 Site24x7 集成的 AppSync 监视器。如果您的 DynamoDB 数据源宕机或出现任何问题,您将收到来自 Site24x7 的 AppSync 监视器通知告警,以便您追踪问题。
Site24x7 与 AWS AppSync 集成的优势
Site24x7 与 AWS AppSync 的集成提供了关于受监控资源的数据源、模式类型和缓存详情的清晰洞察。
通过 Site24x7 与 AWS AppSync 的集成,您可以:
- 使用多种指标监控您的资源。
- 配置阈值 并在数据源宕机时接收告警。
- 获取包括字段类型和数据源在内的模式类型详细概览。
- 计划 IT 自动化以调用 AppSync GraphQL API、查看 CloudWatch 日志,并识别特定错误代码或模式。
设置与配置
- 如果尚未完成,请通过在您的账户与 Site24x7 的 AWS 账户之间创建跨账户 IAM 角色来启用对 AWS 资源的访问。了解更多。
- 在集成 AWS 账户页面,请确保在待发现服务字段中已选择 AWS AppSync。了解更多。
策略与权限
请确保 Site24x7 拥有以下权限以监控 AWS AppSync:
- Appsync:getGraphqlApi
- Appsync:getApiCache
- Appsync:getSchemaCreationStatus
- Appsync:listTagsForResource
- Appsync:listDataSources
- Appsync:listTypes
- Appsync:listResolvers
- Appsync:getFunction
- Appsync:listGraphqlApis
- Appsync:getType
- Appsync:describeLogStreams
- Appsync:getLogEvents
- Appsync:getLogStreams
- Appsync:listApiKeys
轮询频率
Site24x7 按照设定的轮询频率(从每分钟一次到每天一次)查询 CloudWatch 和其他 AWS 服务级别 API,以收集来自 AWS AppSync 的指标。
支持的 AppSync 指标
| 指标名称 | 描述 | 单位 |
| 4XXError | 由于客户端配置不正确导致的无效请求错误。 | 数量 |
| 5XXError | 执行 GraphQL 查询期间遇到的错误。 | 数量 |
| Latency | AWS AppSync 从接收客户端请求到向客户端返回响应所经过的时间。不包括响应到达终端设备的网络延迟。 | 毫秒 |
| ConnectSuccess | 成功建立至 AWS AppSync 的 WebSocket 连接数。连接可以不含订阅。 | 数量 |
| ConnectClientError | 因客户端错误被 AWS AppSync 拒绝的 WebSocket 连接数。 | 数量 |
| ConnectServerError | AWS AppSync 处理连接时产生的错误数。 | 数量 |
| DisconnectSuccess | 成功断开至 AWS AppSync 的 WebSocket 连接数。 | 数量 |
| DisconnectClientError | AWS AppSync 断开 WebSocket 连接时产生的客户端错误数。 | 数量 |
| DisconnectServerError | AWS AppSync 断开 WebSocket 连接时产生的服务端错误数。 | 数量 |
| SubscribeSuccess | 通过 WebSocket 成功注册至 AWS AppSync 的订阅数。 | 数量 |
| SubscribeClientError | 因客户端错误被 AWS AppSync 拒绝的订阅数。 | 数量 |
| SubscribeServerError | AWS AppSync 处理订阅时产生的错误数。 | 数量 |
| UnsubscribeSuccess | 成功处理的取消订阅请求数。 | 数量 |
| UnsubscribeClientError | 因客户端错误被 AWS AppSync 拒绝的取消订阅请求数。 | 数量 |
| UnsubscribeServerError | AWS AppSync 处理取消订阅请求时产生的错误数。 | 数量 |
| PublishDataMessageSuccess | 成功发布的订阅事件消息数。 | 数量 |
| PublishDataMessageClientError | 因客户端错误未能发布的订阅事件消息数。 | 数量 |
| PublishDataMessageServerError | AWS AppSync 发布订阅事件消息时产生的错误数。 | 数量 |
| PublishDataMessageSize | 已发布的订阅事件消息的大小。 | 字节 |
| ActiveConnections | 一分钟内从客户端到 AWS AppSync 的并发 WebSocket 连接数。 | 数量 |
| ActiveSubscriptions | 一分钟内来自客户端的并发订阅数。 | 数量 |
| ConnectionDuration | 连接保持打开状态的时间。 | 毫秒 |
| InvalidationSuccess | 通过带有 $extensions.invalidateSubscriptions() 的 mutation 成功使订阅失效(取消订阅)的数量。 | 数量 |
缓存相关指标
| 指标名称 | 描述 | 单位 |
| CacheHits | 主字典中成功的只读键查找次数。 | 数量 |
| CacheMisses | 主字典中失败的只读键查找次数。 | 数量 |
| CurrItems | 缓存中的项目数量。 | 数量 |
| Evictions | 因达到最大内存限制而被驱逐的键数量。 | 数量 |
| Reclaimed | 键过期事件的总数。 | 数量 |
| BytesUsedForCache | Redis 为所有目的(包括数据集和缓冲区)分配的总字节数。 | 字节 |
阈值配置
为 Site24x7 - AWS AppSync 集成监视器配置阈值:
- 登录您的 Site24x7 账户,前往管理 > 配置文件 > 阈值与可用性。
- 点击添加阈值配置文件。
- 从监视器类型下拉菜单中选择 AWS AppSync,并在显示名称字段中填写合适的名称。
- 支持的指标将显示在阈值配置部分。您可以为上述所有指标设置阈值,并通过将缓存删除通知和缓存故障通知选项切换为是来配置接收通知。
- 点击保存。
授权
每个 AWS AppSync 监视器均视为基础监视器。
AWS AppSync 数据
要查看 AWS AppSync 数据,请登录 Site24x7 并前往云 > AWS > AppSync。您可以在以下标签页中查看缓存详情、模式类型和受监控资源及其他配置详情:
摘要
摘要标签页提供 AppSync 指标的概览。您可以分析指标并随时了解最新变化(如有)。例如,如果 AppSync API 随机出现高延迟,延迟图表将更新至最新值,让您及时了解变化情况。
缓存
缓存标签页提供 AppSync 缓存设置详情及相关指标。您可以在 AppSync 缓存设置部分查看缓存服务器的当前状态。例如,如果您的缓存服务器发生故障或被删除,您可以在 AppSync 缓存设置部分看到故障或已删除状态,从而了解当前状态并采取相应措施。
受监控资源
受监控资源标签页通过解析器显示通过 AppSync 链接的数据源。解析器是模式操作与数据源之间的连接模块,负责将 GraphQL 请求和响应转换为已连接数据源可理解的格式。
您可以查看受监控数据源的状态、数据源名称、数据源类型、已连接字段和资源 ID。
拓扑视图
拓扑视图标签页提供实时的、以资源为中心的依赖关系图。它动态追踪您的 AppSync 资源与周边 AWS 基础架构的实时连接关系,从而在告警触发时加快根本原因定位。如果任何已连接组件处于严重状态,它将在拓扑视图中相应标注,并显示中断原因,让您无需离开监视器页面即可精确定位故障点。与账户级别的拓扑视图不同,此标签页将可视化范围限定于单个资源,精确回答:该 AppSync 资源连接了什么,以及它宕机后会产生什么影响?您可以从单个资源追踪完整的依赖链,直至其主要父级实体,直到服务类型、区域和 AWS 账户级别。
模式概览
模式概览标签页列出基于模式类型的所有属性。模式分为两类:根模式类型(包括查询、变更或订阅)和用户自定义模式类型。您可以从按模式类型筛选下拉列表中选择所需的模式类型,并查看该模式类型中的所有属性。
配置
配置标签页提供 AWS AppSync 的配置数据,包括模式状态、身份验证类型、数据源总数和模式类型数量。
最新日志
最新日志标签页提供查询中每个字段的日志记录信息,方便您轻松追踪日志。
中断
中断标签页显示您的资源状态历史,如宕机、故障、严重或维护中。您还可以在中断标签页中查看中断的开始时间、结束时间、持续时长及评论(如有)。
