

# OPS04-BP04 实施依赖项遥测
<a name="ops_telemetry_dependency_telemetry"></a>

设计和配置工作负载，使其能够提供关于其依赖的资源状态的信息。这些是工作负载外部的资源。外部依赖项的示例可以包括外部数据库、DNS 和网络连接。使用此信息确定何时需要响应，并提供有关工作负载状态的额外背景信息。

 **期望结果：** 
+  您的工作负载发出有关外部依赖项状态的遥测。 
+  当依赖项运行状况不佳时，您会得到通知。 

 **常见反模式：** 
+ 您的用户无法访问您的站点。如果不手动执行检查，了解 DNS 提供程序是否正常运行，就无法确定是否是 DNS 的问题。
+ 您的购物车应用程序无法完成交易。如果不与信用卡处理提供商联系进行确认，就无法确定是否是他们的问题。

 **建立此最佳实践的好处：** 
+  监控外部依赖项可预先对问题发出通知。 
+  了解依赖项的运行状况可帮助排除故障。 

 **在未建立这种最佳实践的情况下暴露的风险等级：**中等 

## 实施指导
<a name="implementation-guidance"></a>

 与利益攸关方合作，确定您的工作负载依赖的外部依赖项。外部依赖项包括外部数据库、API 或您的工作负载和其他环境中的资源之间的网络连接。制定监控策略以了解依赖项的运行状况并在状态变化时主动报警。 

 **客户示例** 

 AnyCompany Retail 的电子商务工作负载依赖位于另一个环境中的数据库。每天晚上在数据库中填入数据，以供在电子商务平台中使用。网络连接和数据库支持由其他团队负责。电子商务团队配置了几个金丝雀警报，以便在网络连接中断、数据库无法访问和作业未能完成时提醒他们。 

 **实施步骤** 

1.  确定您的工作负载所依赖的外部依赖项。实施遥测以跟踪依赖项的运行状况或可访问性。 

   1.  AWS 客户可以使用 [AWS Health Dashboard](https://docs.aws.amazon.com/health/latest/ug/what-is-aws-health.html) 来监控 AWS 服务的运行状况和接收运行状况事件的通知。 

   1.  [Amazon CloudWatch Synthetics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) 可用于监控 API、URL 和网站内容。 

1.  设置提醒，在依赖项运行状况不佳或无法访问时通知您的组织。 

   1.  购买了 Enterprise Support 服务的客户可以向他们的技术客户经理请求[建立监测策略研讨会](https://aws.amazon.com/premiumsupport/technology-and-programs/proactive-services/)。此研讨会帮助您为工作负载构建可观测性策略。 

1.  确定依赖项的联系人，以便在依赖项运行状况不佳时可以联系他们。记录如何联系依赖项所有者、服务协议和上报流程。 

 **实施计划的工作量级别：**中等。实施依赖项遥测可能需要构建自定义监控解决方案。 

## 资源
<a name="resources"></a>

 **相关最佳实践：** 
+  [OPS04-BP01 实施应用程序遥测](ops_telemetry_application_telemetry.md) - 您可以将依赖项监控内置到应用程序遥测中。 

 **相关文档：** 
+ [使用 CloudWatch Synthetics 全天候监控您的私有内部端点](https://aws.amazon.com/blogs/mt/monitor-your-private-endpoints-using-cloudwatch-synthetics/)

 **相关视频：** 
+ [AWS re:Invent 2018：监控一切：Amazon CloudWatch 在 BBC 中的实际运用](https://www.youtube.com/watch?v=uuBuc6OAcVY)
+ [AWS re:Invent 2022 - 开发可观测性战略](https://www.youtube.com/watch?v=Ub3ATriFapQ)
+ [AWS re:Invent 2022 - 亚马逊的可观测性最佳实践](https://www.youtube.com/watch?v=zZPzXEBW4P8)

 **相关示例：** 
+ [可观测性研讨会](https://catalog.workshops.aws/observability/en-US/intro)
+ [Well-Architected 实验室 – 依赖项监控](https://www.wellarchitectedlabs.com/operational-excellence/100_labs/100_dependency_monitoring/)

 **相关服务：** 
+  [Amazon CloudWatch Synthetics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) 
+ [AWS Health](https://docs.aws.amazon.com/health/latest/ug/what-is-aws-health.html)