GCP Cloud Observability 是 Google Cloud Platform (GCP) 提供的一组工具和服务,用于监控、日志记录、追踪和调试应用程序和基础设施的健康和性能。通过收集和分析遥测数据(如指标、日志和追踪信息),Cloud Observability 有助于理解应用程序的行为,提供可见性,从而更快速、更有效地预测、识别和响应意外变化。
主要特点
-
监控 (Monitoring):通过 Google Cloud Monitoring 收集和分析应用程序和基础设施的指标数据,提供实时的性能视图和警报。
-
日志记录 (Logging):通过 Google Cloud Logging 收集和管理日志数据,支持存储、搜索、分析和监控。
-
追踪 (Tracing):通过 Google Cloud Trace 收集和分析请求的路径,帮助识别和定位分布式应用程序中的性能问题。
-
分析 (Analysis):通过集成和分析指标、日志和追踪数据,提供深入的洞察和诊断信息。
使用场景
-
电子商务平台:确保高可用性和性能,提供“永远在线”的用户体验。
-
移动和Web 应用程序:监控和优化应用程序的性能,提高用户满意度。
-
数据分析和机器学习:监控数据处理和分析任务,确保高效运行。
-
微服务架构:追踪和调试分布式系统中的请求,提高故障排除能力。
-
持续集成和交付 (CI/CD):监控和分析持续集成和交付流程,提高开发效率。
最佳实践
日志记录和监控的最佳实践
日志记录和监控策略应该是应用程序开发的固有部分,而不是事后的补充。解决方案必须为每个组件及其操作提供端到端的可见性。它还必须支持构成应用程序的分布式架构和各种技术。在Google Cloud中设计和实施日志记录和监控解决方案时,请考虑以下最佳实践。
强制执行数据访问日志
为相关的环境和服务强制执行数据访问日志。始终保持审计日志启用状态,以记录管理活动和平台资源的访问情况。审计日志有助于回答“谁在何时何地做了什么?”启用审计日志有助于监控平台可能的漏洞或数据滥用。
启用网络相关日志记录
为应用程序使用的所有组件启用网络相关的日志记录。网络相关日志(如VPC流量、防火墙规则、DNS查询、负载均衡器等)不仅提供有关日志表现的重要信息,还可以帮助提供与威胁检测相关的关键安全事件的可见性,如未经授权的登录、恶意软件检测等。
将日志汇总到中央项目
为了便于审查和管理,将日志汇总到中央项目中。大多数应用程序现在遵循分布式架构,这使得很难全面了解整个应用程序的运行情况。将日志保存在单个项目中有助于更容易地管理和监控。这也使得身份和访问管理(IAM)更容易,遵循最低权限原则,仅限于那些需要访问日志数据的团队。
根据组织政策配置保留期
根据组织的政策、法规或合规要求配置日志保留期。创建和管理日志保留策略应有助于确定日志数据需要存储多长时间。保留期应根据行业法规、适用法律和内部安全考虑因素确定。
配置警报
配置区分需要立即调查的事件的警报。并非所有事件和应用程序都是一样的。运营团队必须清楚了解哪些事件应按什么顺序处理。警报应基于这种层次结构——高优先级警报与低优先级警报。
规划日志记录和监控相关的成本
尽管日志记录和监控是绝对必要的,但也重要的是规划跟踪日志数据、存储成本、可视化和警报相关的使用成本。运营团队应能够提供这些成本的可靠估算。像Google Cloud定价计算器这样的工具可以帮助估算这些成本。
提供持续和自动化的日志监控
有效日志记录和监控的另一个关键方面是主动监控这些日志,以识别和警报安全问题,如配置错误、漏洞和威胁检测。安全指挥中心等服务支持发现配置错误和漏洞,报告并保持合规,并检测目标威胁。此外,解决方案应允许日志数据与SIEM(安全信息和事件管理)和SOAR(安全编排、自动化和响应)系统集成,以进行进一步分析。