QCon北京「鸿蒙专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

Google 发布 Zipkin 与 Stackdriver Trace 的集成功能,实现分布式应用的跟踪

  • 2017-01-18
  • 本文字数:1478 字

    阅读完需:约 5 分钟

Google 云平台(Google Cloud Platform)发布了一个开源的 Zipkin 服务器,允许兼容Zipkin 的客户端发送跟踪信息到Google 自己的 Stackdriver Trace 分布式跟踪服务中,从而实现分析的功能。Zipkin/Stackdriver Trace 集成的目标用户是某些开发人员,他们的应用和服务是使用 Stackdriver Trace 官方所不支持的语言或框架编写的,或者是某些应用的持有者,这些应用已经通过 Zipkin 实现了 instrument 功能,他们还希望访问 Stackdriver Trace 的高级分析工具。

Google 的 Stackdriver 能够对云平台上的应用提供监控、日志以及诊断服务。尽管任何云平台捕获到的数据都可以发送到 Stackdriver API 上,但是 Stackdriver 的功能是与 Google 云平台(Google Cloud Platform,GCP)( GCP 的客户可以免费使用它)中的很多服务高度集成的。Google Stackdriver 中包含了多个工具,其中就包括 Stackdriver Trace ,这是一个分布式的跟踪服务,它是由最初的 Google Dapper 分布式跟踪系统演化而来。

将分布式(微服务)系统进行 instrument 操作之后,Stackdriver Trace 就允许开发人员跟踪系统的请求流,分析应用的延迟并隔离性能瓶颈。Stackdriver Trace 最初关注的是 Google App Engine 项目,但是现在支持运行在虚拟机或容器上的应用,这是通过为 Node.js Java Go (很快就会支持 Ruby 和.Net)提供 instrumentation 库实现的,它还可以通过 API 来实现该功能。

另外一个流行的分布式跟踪系统是 Zipkin ,它最初是由 Twitter 创建的,灵感起源于 Dapper 的论文。这项成果在 2012 年开源,随后发展成为社区驱动的 Open Zipkin 项目。它反过来又推动了 Open Tracing API 的形成,这是一个由 CNCF 支持的项目。Zipkin 提供了一系列的 instrumentation 库,这些库能够捕获应用的 trace,另外还有一个后端系统用来存储 trace 并支持通过 Web 界面展现 trace 信息。目前,已经有针对 Java、.Net、Node.js、Python、Ruby 和 Go 的 Zipkin 客户端,还有与各种流行 Web 框架的内置集成。根据 GCP 博客的说法,Zipkin 得到了广泛的应用,Twitter、Yelp 和 Salesforce 是该项目的主要贡献者。

Google 云平台的博客文章指出,这个新的 Stackdriver Trace Zipkin 连接器是已有 Zipkin 后端的替代方案,它会继续使用相同的兼容 Zipkin 的跟踪器,这样的话,就没有必要再去配置、管理或维护 Zipkin 后端了。另外,新的收集器能够与使用 Zipkin 跟踪器实现 instrument 功能的服务协同运行。

目前的 Stackdriver-Zipkin v0.2.0 发布版本有几个已知的限制:

  1. Zipkin 跟踪器必须要支持正确的 Zipkin 时间和持续时长语义
  2. Zipkin 跟踪器和 Stackdriver Trace instrumentation 库不能向同一条 trace 记录上附加 span,因为它们会对服务间传播的跟踪上下文采用不同的格式。这意味着某个库捕获的 trace 中不能包含其他类型的库 instrument 服务后所形成的 span,也就是说,如何服务代码混合使用了 Stackdriver Trace 和 Zipkin 的 instrument 功能,那么跨越这些服务所形成的跟踪信息必须要在标准的 Stackdriver 报告系统之外进行集成;
  3. 最初的释放版本只支持对 Zipkin 服务器进行写操作,Google 云平台的博客上指出,如果缺乏读取功能成为了一种阻碍的话,那么开发人员可以在 GitHub 上提交 issue 或 pullrequest。

Google Stackdriver Trace Zipkin 收集器的代码可以通过 GoogleCloudPlatform GitHub 仓库进行下载。配置以及从分布式跟踪器收集 trace 数据的指令可以在“组合使用Stackdriver Trace 与Zipkin ”指南中找到。

查看英文原文 Google Release Zipkin Integration with Stackdriver Trace for Tracing Distributed Applications

2017-01-18 18:002822

评论

发布
暂无评论
发现更多内容

建设领先的AI原生云,百度智能云落地新一代高性能AI计算集群

百度大脑

微博评论的高性能高可用计算架构

AragornYang

架构训练营 架构实战营

Linux之telnet命令

入门小站

Linux

免费机器资源、硬核导师、丰厚奖励|飞桨黑客马拉松第二期开始啦!

百度大脑

有温度的人工智能,零门槛助力企业“鲤跃”智能化“龙门”

百度大脑

RENO: Netflix的快速事件通知系统

俞凡

架构 netflix 大厂实践 3月月更

使用关键点检测打造小工具Padoodle,让涂鸦小人跟随真人学跳舞

百度大脑

[算法练习]2 二进制中1的个数

暖蓝笔记

3月月更

一文彻底搞懂原型链

CRMEB

LeetCode刷题笔记:数组中重复的数据

OpenHacker

JavaScript 算法 LeetCode

口腔数字化时代:AI牙医的防御基建与攻坚

脑极体

Web 键盘输入法应用开发指南 (7) —— 开发实战(二)

天择

JavaScript 键盘 实战 输入法 3月月更

纯CSS 神奇的边框特效

德育处主任

css3 纯CSS 前端可视化 css动画

在线JSON转toml工具

入门小站

工具

报名啦!中小企业如何借力AI逆势突围?飞桨中国行定档3月23日!

百度大脑

Eclipse 不为人所知的另一面 - 企业管理软件领域 ABAP 编程语言开发利器

汪子熙

eclipse ide 开发者 abap 3月月更

实用机器学习笔记二十六:NAS

打工人!

学习笔记 NAS 机器学习算法 3月月更 神经网络架构搜索

持续集成工具篇:Jenkins与流水线管理

自动化 持续集成 jenkins 持续交付 构架

微博评论系统的高性能高可用计算架构

阿卷

架构实战营

12个iOS技术面试题及答案总结

原来是泽镜啊

ios 程序员 架构师 ios开发

AI语音识别-我给浏览器加了个语音搜索功能

DS小龙哥

语音识别 3月月更

架构训练营毕业总结

Geek_e6f7f6

架构实战营

面向智能合约、区块链、Web3、以太坊开发工具指南

devpoint

Ethereum infura Solidity Web3.0 3月月更

【建议收藏】Kafka 面试连环炮, 看看你能撑到哪一步?(上)

王江华

大数据 kafka 面试 中间件 消息队列

Spring cloud 之 CircuitBreaker篇

邱学喆

Spring Cloud circuit break Resilience4j

关于云端应用开发语言选择

穿过生命散发芬芳

3月月更

吉利控股集团与百度深化战略合作

百度大脑

百度连续四年亮相全球量子信息处理顶会QIP 宣布量子战略规划升级

百度大脑

模块化编程及LCD1602调试工具

謓泽

3月月更

做一个小程序到底要多少钱?都有哪些费用?

源字节1号

开源 前端开发 后端开发 开发小程序

图灵奖得主Yann LeCun走进百度,与世界研究工作者展开交流

百度大脑

Google发布Zipkin与Stackdriver Trace的集成功能,实现分布式应用的跟踪_Google_Daniel Bryant_InfoQ精选文章