SOFATracer 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
SOFATracer 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
SOFATracer 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 Apache 2.0
开发语言 Java
操作系统 跨平台
软件类型 开源软件
开源组织 蚂蚁金服
地区 国产
投 递 者 王练
适用人群 未知
收录时间 2018-05-31

软件简介

SOFATracer 是一个用于分布式系统调用跟踪的组件,通过统一的 traceId 将调用链路中的各种网络调用情况以日志的方式记录下来,以达到透视化网络调用的目的。这些日志可用于故障的快速发现,服务治理等。

一、背景

在目前的技术架构实施中,统一采用面向服务的分布式架构,通过服务来支撑起一个个应用,而部署在应用中的各种服务通常都是用复杂大规模分布式集群来实现的,同时,这些应用又构建在不同的软件模块上,这些软件模块,有可能是由不同的团队开发,可能使用不同的编程语言来实现、有可能部署了几千台服务器。因此,就需要一些可以帮助理解各个应用的线上调用行为,并可以分析远程调用性能的组件。

为了能够分析应用的线上调用行为以及调用性能,蚂蚁金服基于 OpenTracing 规范 提供了分布式链路跟踪 SOFATracer 的解决方案。

二、功能简介

为了解决在实施大规模微服务架构时的链路跟踪问题,SOFATracer 提供了以下的能力:

2.1 基于 OpenTracing 规范提供分布式链路跟踪解决方案

基于 OpenTracing 规范 并扩展其能力提供链路跟踪的解决方案。各个框架或者组件可以基于此实现,通过在各个组件中埋点的方式来提供链路跟踪的能力。

2.2 提供异步落地磁盘的日志打印能力

基于 Disruptor 高性能无锁循环队列,提供异步打印日志到本地磁盘的能力。框架或者组件能够在接入时,在异步日志打印的前提下可以自定义日志文件的输出格式。SOFATracer 提供两种类似的日志打印类型即摘要日志和统计日志,摘要日志:每一次调用均会落地磁盘的日志;统计日志:每隔一定时间间隔进行统计输出的日志。

2.3 支持日志自清除和滚动能力

异步落地磁盘的 SOFATracer 日志支持自清除和滚动能力,支持按照按照天清除和按照小时或者天滚动的能力

2.4 基于 SLF4J MDC 的扩展能力

SLF4J 提供了 MDC(Mapped Diagnostic Contexts)功能,可以支持用户定义和修改日志的输出格式以及内容。SOFATracer 集成了 SLF4J MDC 功能,方便用户在只简单修改日志配置文件即可输出当前 Tracer 上下文的 tracerId 和 spanId

2.5 界面展示能力

SOFATracer 可以将链路跟踪数据远程上报到开源产品 Zipkin 做分布式链路跟踪的展示。

2.6 统一配置能力

配置文件中提供丰富的配置能力以定制化应用的个性需求。

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击加入讨论🔥(3)
发表于开发技能专区
2019/09/09 11:38

SOFATracer 2.4.1 发布,分布式系统调用跟踪组件

1、发布 SOFATracer 2.4.1 版本,主要变更如下: 支持自定义埋点 (FlexibleTracer) 支持 Dubbo 2.6.x 日志输出支持非 json 格式(xstringbuilder) Bug fixes Fix BasePreparedStatement initialization policy problem. #233 Fix SQLException coverage problem. #231 Enhancement Update Dubbo version to 2.7.3. Not compatible with low version. #204 #230 #237 New Features In accordance with 3.0.6 version 2、SOFATrace...

2
12
发表于软件架构专区
2019/09/09 11:36

SOFATracer 发布 3.0.6 版本,分布式系统调用跟踪组件

1、发布 SOFATracer 3.0.5 版本,主要变更如下: 支持自定义扩展 Repoter 上报 Dubbo 2.7.x 系列支持 2.7.3 版本 修复 BasePreparedStatement 初始化问题 修复 SQLException 被覆盖问题 优化常量命名及代码注释等 更新案例及官方文档 Bug fixes Fix BasePreparedStatement initialization policy problem. #233 Fix SQLException coverage problem. #231 Enhancement Update Dubbo version to 2.7.3. Not compatible with low v...

0
9
发表于运维专区
2019/08/06 14:55

SOFATracer 2.4.1/3.0.6 发布,蚂蚁金服开源分布式系统调用跟踪组件

一、本期发布内容 发布 SOFATracer 2.4.1/3.0.6, 主要变更如下: i. 升级 Dubbo 版本至 2.7.3. ii. 修复 Dubbo 插件中相关埋点参数获取问题 iii. 修复 Datasource 埋点中的若干问题 iiii. Cheery pick 代码优化至 3.x 分支 V 2.4.1 Bug fixes Fix BasePreparedStatement initialization policy problem. #233 Fix SQLException coverage problem. #231 Enhancement Update Dubbo version to 2.7.3. Not compatible with low ver...

5
24
发表于运维专区
2019/05/29 12:20

SOFATracer 发布 3.0.5 版本 | 蚂蚁金服开源分布式系统调用跟踪组件

1、发布 SOFATracer 3.0.5 版本,主要变更如下: i. 兼容 openfeign 9.x 版本 2、SOFATracer 简介 SOFATracer 是一个用于分布式系统调用跟踪的组件,通过统一的 traceId 将调用链路中的各种网络调用情况以日志的方式记录下来,以达到透视化网络调用的目的。这些日志可用于故障的快速发现,服务治理等。 为了解决在实施大规模微服务架构时的链路跟踪问题,SOFATracer 提供了以下的能力: 2.1 基于 OpenTracing 规范提供分布式链路...

8
35
2018/08/09 11:09

分布式链路追踪中间件 SOFATracer 2.1.2 发布

SOFATracer 2.1.2 发布: 修复并发初始化导致的性能损失问题 依赖优化 修复 Spring MVC 接收 SOFATracer 上下文的方式并修复上报数据到 Zipkin 的 traceId 的表现形式 详见 SOFATracer 2.1.2 发布报告 SOFATracer 是一个用于分布式系统调用跟踪的组件,通过统一的 traceId 将调用链路中的各种网络调用情况以日志的方式记录下来,以达到透视化网络调用的目的。这些日志可用于故障的快速发现,服务治理等。 下载地址: Source cod...

0
10
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
暂无内容
3 评论
44 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部