日志记录和监控

Last reviewed 2024-04-19 UTC

此部分介绍了日志记录和监控在开发者平台与应用的企业应用蓝图中如何工作。适用于 GKE 的 Google Cloud Observability 为蓝图应用提供 Cloud Logging 和 Cloud Monitoring 服务。

默认情况下,应用模板中的基本源代码会将日志发送到 stdout。由于 stdout 可让平台处理应用日志,因此使用 stdout容器化应用的最佳实践。应用代码已通过 Prometheus 客户端库进行了插桩,以便导出应用特有的指标。GKE 会自动为每个应用提供指标,其中包括 Kube 状态指标、资源利用率、SRE 黄金指标和数据库实例指标。对于开发者平台团队,平台会提供基础设施、使用情况和跨应用流量指标。

日志记录存储

借助 Cloud Operations for GKE,您还可以将系统日志和应用日志收集到中心化日志存储桶中。此外,此蓝图还会在每个环境文件夹中包含一个项目,用于存储日志。企业基础蓝图具有单独的日志记录项目,可导出整个 Google Cloud 组织中汇总的 Cloud Audit Logs 日志。租户最需要的日志类型还按租户进行分隔。例如,负责 frontend 应用的应用开发者可能只有权访问 frontend 容器日志和 Pod 日志,并且只能在开发和非生产环境中访问。

下表列出了日志类型、位置和访问权限控制粒度。

访问权限控制粒度 日志类型 日志存储位置

开发者平台

多租户基础设施日志

项目:eab-infra-cicd

应用工厂日志

项目:eab-app-factory

按环境

  • 节点
  • 集群控制平面
  • 非租户容器或 Pod

项目:eab-gke-{env}

存储桶: _Default

  • GKE 使用的 Compute Engine 资源
  • Cloud Service Mesh 流量

项目:eab-gke-{env}

按环境和租户

租户容器或 Pod

项目:eab-gke-{env}

存储桶:按租户 (范围)

  • Alloy DB 会话
  • 其他租户拥有的资源

项目:eab-app-{appname}-{env}

按租户

  • 应用构建
  • 应用部署

项目:eab-app-cicd-{appname}

应用监控

适用于 GKE 的 Google Cloud Observability 为 GKE 提供预定义的监控信息中心。此外,此蓝图还启用 Google Cloud Managed Service for Prometheus,后者可从 Prometheus 导出器收集指标,并允许您使用 PromQL 全局查询相应数据。PromQL 意味着您可以使用熟悉的工具,例如 Grafana 信息中心和基于 PromQL 的提醒。Cloud Service Mesh 已启用,可在 Google Cloud 控制台中为您提供信息中心,以观察服务之间和租户之间的交互,并进行问题排查。此蓝图还包含用于多项目监控指标范围的项目。

威胁和漏洞监控

Security Command Center 可让您深入了解蓝图的整体安全状况。Security Command Center 高级方案为 GKE 中基于容器的活跃工作负载提供容器威胁检测Web Security Scanner 用于检测面向互联网的服务中的漏洞。Web Security Scanner 通过抓取 HTTP 服务并从基础网址开始追踪所有链接来检测漏洞。然后,Web Security Scanner 会检测尽可能多的用户输入和事件处理程序。

后续步骤