Repolode
openzipkin

openzipkin/zipkin

Zipkin 是一个分布式追踪系统,用于收集和查询耗时数据,帮助排查微服务架构中的延迟问题。

可替代:Datadog APM

Star
17,473
Fork
3,093
未关闭 Issue
176
最近提交
3个月前

这是什么?

Zipkin 从已埋点的应用中收集耗时数据,可以通过 trace ID 直接查找追踪记录,也能按服务名、操作名、标签和耗时进行搜索。界面会汇总每条追踪中各服务的耗时占比以及操作是否失败,并通过依赖关系图展示应用之间的调用流量。

应用可以通过 HTTP 或 Kafka 上报 span,也支持 RabbitMQ、gRPC、Apache ActiveMQ、Apache Pulsar 等传输方式。数据既可以保存在内存中用于测试,也可以持久化到 Apache Cassandra、Elasticsearch 或 OpenSearch,另有已不再推荐的 MySQL 存储选项。

项目还提供核心 Java 库,包含 Zipkin v1 和 v2 JSON 编解码器以及存储组件接口,服务端以可执行 jar、Docker 镜像、Homebrew 和 Helm chart 等形式发布。另有不含消息传输组件的精简版,适合更轻量的部署。

核心功能

  • 01可按服务、操作、标签和耗时搜索追踪,也可直接输入 trace ID 查看。
  • 02依赖关系图展示应用间的请求流向,包括错误路径。
  • 03支持通过 HTTP、Kafka、RabbitMQ、gRPC、ActiveMQ 和 Apache Pulsar 上报 span。
  • 04存储可选内存、Cassandra、Elasticsearch 和 OpenSearch。
  • 05提供包含 v1 和 v2 JSON 编解码器的核心 Java 库。

适用场景

  • 排查微服务调用链中导致高延迟的具体服务。
  • 从日志中拿到 trace ID 后,跨服务定位失败请求。
  • 在无数据库的情况下本地启动 Zipkin 用于开发和测试。
  • 通过依赖关系图发现对已弃用服务的调用。

快速上手

  1. 1

    使用 Docker 启动 Zipkin

    docker run -d -p 9411:9411 openzipkin/zipkin
  2. 2

    在浏览器中打开 http://localhost:9411/zipkin 访问 Zipkin 界面

使用前须知

  • 默认的内存存储不是持久化的,不适合实际工作负载。
  • 应用程序必须先接入追踪器或埋点库,才能向 Zipkin 发送追踪数据。
  • Zipkin 服务端需要 JRE 17 或更高版本。

收录于专题

标签

常见问题

zipkin 是什么?
Zipkin 是一个分布式追踪系统,用于收集和查询耗时数据,帮助排查微服务架构中的延迟问题。 Zipkin 从已埋点的应用中收集耗时数据,可以通过 trace ID 直接查找追踪记录,也能按服务名、操作名、标签和耗时进行搜索。界面会汇总每条追踪中各服务的耗时占比以及操作是否失败,并通过依赖关系图展示应用之间的调用流量。
zipkin 可以免费使用吗?用的什么许可证?
zipkin 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
zipkin 还在维护吗?
半年内有更新。zipkin 最近一次提交是在 2026年8月6日。
zipkin 适合用来做什么?
排查微服务调用链中导致高延迟的具体服务。 从日志中拿到 trace ID 后,跨服务定位失败请求。 在无数据库的情况下本地启动 Zipkin 用于开发和测试。 通过依赖关系图发现对已弃用服务的调用。
zipkin 怎么安装和运行?
使用 Docker 启动 Zipkin: docker run -d -p 9411:9411 openzipkin/zipkin 在浏览器中打开 http://localhost:9411/zipkin 访问 Zipkin 界面
在哪里获取 zipkin?
源代码和安装说明在 GitHub 上:https://github.com/openzipkin/zipkin

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目