从 ELK 到 Grafana Loki:电商领军企业 Blinkit 如何使用 Grafana Cloud 实现日志堆栈现代化
Blinkit,前身为 Grofers,是一家在印度为数百万消费者提供即时杂货和必需品配送的公司。客户可以使用手机应用随时下单,Blinkit 在全国拥有 2,000 多名员工和仓库,以确保所有配送都在 10 分钟或更短时间内完成。
随着公司的规模扩大,并开始向全国更多地点和更多消费者提供即时配送服务,Blinkit 的传统日志工具变得过于昂贵且难以管理。开发者最终花费大量精力维护自行管理的 Elastic Stack,没有余力专注于改进产品和服务以造福客户。
Blinkit 工程经理 Vaibhav Krishna 表示:“我们花费了一半的时间来确保 ELK Stack 的一切正常运行,并持续调整我们的日志,以免系统崩溃。”
加入购物车:Grafana Loki
作为回应,公司放弃了 Elastic,转而采用了新的日志解决方案——Grafana Loki。这家配送服务公司已经在使用开源软件,例如用于仪表盘的 Grafana 和 Prometheus,后者每月在 AWS 上的 Kubernetes 环境中处理约 150 万个指标。通过将 Grafana Loki 添加到他们的堆栈中,Blinkit 现在将其所有应用日志都导入 Loki 实例,每月日志数据总量可达 60TB。
Krishna 表示:“Grafana Loki,我们新的日志聚合系统,存储并允许我们查询来自所有应用和整个基础设施的日志。它非常适合我们的生态系统。”
尽管团队最初使用的是自行托管的 Loki 实例,但他们很快意识到不想重蹈覆辙,将资源花费在产品维护上,而不是创新新产品。因此,除了对旧系统使用 InfluxDB 和 AWS CloudWatch 外,他们迅速迁移到了托管式 Grafana Cloud Logs 服务。现在,Blinkit 可以无缝地将指标和日志集成到一处,并以新的、有影响力的方式使用全面的数据。
Krishna 说:“通过 Loki 和 Grafana,您可以在一个地方获取日志和来自日志的指标。在某些用例中,Loki 是关键的监控工具,我们已开始像依赖 Prometheus 一样,将 Loki 作为我们的主要指标源之一。”
上图是 Blinkit 的内部 Grafana 主页,其中包含展示关键生产和应用数据的自定义统计面板。
总的来说,Blinkit 使用其 Grafana Stack 监控应用和基础设施数据源。在 Grafana 中可视化的一个关键数据源是每分钟的客户结账次数,这与他们的客户满意度和忠诚度指标直接相关。现在,他们已从 ELK Stack 迁移到 Grafana Cloud,Blinkit 团队不再遗漏实时查看整个可观测性图景所需的关键数据。Blinkit 团队可以在消费者在在线结账过程中遇到问题之前快速解决问题,从而减少他们放弃购物车的想法以及随之产生的收入损失。
Grafana 帮助我们确保我们的结账系统始终为客户正常工作。如果我们的结账系统无法正常运行,我们就没有电商平台。
Vaibhav Krishna,Blinkit 工程经理
“你构建它,你维护它”
Blinkit 的 200 多名工程师以某种形式使用 Grafana 进行可视化,遵循“你构建它,你维护它”的理念。
对于 Blinkit 工程师开发的每一个新产品,他们都会构建自己的 Grafana 仪表盘来监控其性能,既利用开箱即用的面板,也利用 Grafana 社区仪表盘目录中现成的面板。
Krishna 说:“每当我们获得一个新工具,我们都会使用社区中的 Grafana 面板来监控它。”
如果团队中出现任何问题,Grafana Labs 都会介入提供帮助。除了与技术客户经理进行月度会议外,Blinkit 还受益于月度工程会议,在这些会议中,他们作为企业级支持服务的一部分,可以直接接触 Loki 的维护者。Krishna 说:“我们可以带着一些非常基础的查询去找他们,并且会得到回复。”他还说,Loki 团队帮助构建了他们早期的一些 Grafana 仪表盘。“我们还收到了即将发布的内容预览,并且他们积极寻求反馈。”
Blinkit 工程师也从广大的 Grafana 开源社区中学到了很多,社区总是乐于帮助解决从简单到复杂的问题。
Krishna 说:“我们非常受 Grafana 开源组件的激励。我们热爱与社区互动。很容易看出 Grafana 为建立和维护一个充满活力的社区付出了很多努力。我觉得这很酷。”
他们也相信回馈社区。Blinkit 的开源工具 Legend 帮助构建和管理 Grafana 仪表盘,其中包含预填充的指标和警报。Legend 允许 Blinkit 工程师自动设置 Grafana 仪表盘,无需手动编写 CloudWatch、Prometheus 或 InfluxDB 查询。最棒的是,Legend 采用了 USE 和 RED 方法论来监控服务和基础设施级别的指标。(有关该工具的更多信息,请查看 Krishna 最近的 ObservabilityCON 按需讲座)
Krishna 说:“我们希望朝着创建自动化仪表盘的方向发展。”
Blinkit 与 Grafana 的未来
随着 Blinkit 价值 10 亿美元的业务持续扩展,Krishna 希望他的团队的仪表盘技能能够随之发展,以反映其数据源和系统日益增长的容量和复杂性。
关于所有可用的可视化选项,Krishna 说:“我希望改进我们的面板,从折线图和条形图转向热力图和其他面板,以更好地可视化我们正在查看的一些指标。我们尚未大规模采用所有不同的选项。”
他还希望通过分布式跟踪和 Grafana Tempo 来增强 Grafana Stack,并正在研究使用 Grafana 进行警报以及监控 SLA 和 SLO。
Blinkit 对 Grafana Cloud 的未来感到兴奋,我们将随着规模的扩大继续拥抱它,以保持印度领先的即时配送平台地位。
Vaibhav Krishna,Blinkit 工程经理
因此,无论客户住在哪里,Krishna 都有信心 Blinkit 将始终兑现其快速服务承诺。Krishna 说:“因为有了 Grafana,我们能够更快地行动。”
Grafana Cloud 是开始使用指标、日志、跟踪和仪表盘的最简单方式。我们提供慷慨的永久免费层级和适用于各种用例的计划。立即免费注册!
