Service Directory 的可观测性和调试

Traffic Director 与 Service Directory 的集成引入了新的调试复杂性。在您的企业中,服务使用方和服务提供方可能属于不同的团队或组织。为帮助您调试此类问题,Traffic Director 与 Cloud Logging 和 Cloud Monitoring 进行了集成。

例如:

  • 您有一项 checkout 服务使用 Traffic Director 提供应用网络控制。
  • 而 Service Directory 中有一项 payment 服务是由另一个团队(服务提供方)拥有和维护的。
  • 您希望从 checkout 服务调用 payment 服务,以便在 Traffic Director 中创建新的后端服务。此后端服务使用 Service Directory 进行服务发现以连接到 payment 服务。

在此模型中,服务提供方可能需要删除或修改 Service Directory 中托管的 payment 服务。由于他们拥有 payment 服务,因此可以进行此类更改。但是,如果 payment 服务被删除,服务发现就会中断。

日志记录

当 Traffic Director 解析附加到 Service Directory 服务的后端服务时,它会从 Service Directory 中获取端点列表。如果服务已从 Service Directory 中删除,则 Traffic Director 不会获得任何端点。在这种情况下,系统会将一则日志条目添加到 Logging。该日志条目包含以下信息:

  • 后端服务名称
  • Service Directory 名称
  • 一则消息:Service Directory returned 0 endpoints for this service.

此信息可帮助您调试相关问题。您还可以设置提醒以主动收到通知。

监控

与日志记录案例类似,Traffic Director 还与 Monitoring 集成以生成指标。Traffic Director 会将每个后端服务的以下指标添加到 Monitoring:

  • 后端服务名称
  • 与此 Traffic Director 客户端共享的后端服务关联的端点数

Traffic Director 客户端无法将流量发送到没有端点的后端服务。

Google Cloud 控制台

如果 Service Directory 服务被删除,并且 Traffic Director 后端服务中存在该服务的连接,则 Google Cloud 控制台会显示一则警告:The attached Service Directory service could not be found.

后续步骤