监视 Azure Kubernetes Service (AKS) 中的微服务体系结构
本文介绍监视在 Azure 库伯内特服务 (AKS) 上运行的微服务应用程序的最佳做法。这些主题包括遥测收集、监视群集的状态、指标、日志记录、结构化日志记录和分布式跟踪。下图显示了后者。
遥测收集
在任何复杂的应用程序中,在某些时候都会出错。在微服务应用程序中,您需要跟踪数十个甚至数百个服务中发生的情况。若要了解发生的情况,必须从应用程序收集遥测数据。遥测可以分为日志、跟踪和指标。
日志是应用程序运行时发生的事件的基于文本的记录。它们包括应用程序日志(跟踪语句)或 Web 服务器日志等内容。日志主要用于取证和根本原因分析。
跟踪(也称为操作)跨微服务内和跨微服务的多个调用连接单个请求的步骤。它们可以为系统组件的交互提供结构化的可观察性。跟踪可以在请求过程的早期开始,例如在应用程序的 UI 中,并且可以通过网络服务在处理请求的微服务网络中传播。
- 跨度是跟踪中的工作单元。每个范围都通过单个跟踪进行连接,并且可以与其他范围嵌套在一起。它们通常对应于跨服务操作中的单个请求,但它们也可以定义服务中各个组件中的工作。Span 还跟踪从一个服务到另一个服务的出站调用(有时跨度称为