个人简介

Echo Blog


江湖无名 安心练剑
  • 分布式链路追踪-08-adaptive collect 自适应采样
    采样策略 Hello folks,在之前的文章中,我们介绍了有关 Jaeger 的数据采样率,在实际的业务场景中,其主要支持以下 5 种采样率设置,具体如下: 1、固定采样(sampler.type=const)sampler.param=1 全采样, sampler.param=0 不采样。 2、按百分比采样(sampler.type=probabilistic)sampler.par...
    2023-07-25 00:00:00 | Trace
  • 分布式链路追踪-07-log collect 日志收集器
    第三方测评开源日志采集器 日志采集是整个日志基础设施中最基础最关键的组件之一,影响着企业内部数据的完整性以及实时性。 采集器作为数据链路的前置环节,其可靠性、扩展性、灵活性以及资源(CPU 和内存)消耗等,往往是最被关注的核心技术点。 目前开源的日志采集器比较多。各采集器官网上关于其产品特性的描述也都比较相似,基本上都包括日志搜集、转换、路由等功能,并且无一例外都会突出其为高性能而设计...
    2023-07-25 00:00:00 | Trace
  • 分布式链路追踪-06-2023年值得关注的6个开源日志管理工具
    2023年值得关注的6个开源日志管理工具 日志管理包含日志数据存储、处理、分析和可视化,通过利用日志管理工具,可以监控性能趋势、解决问题、检测异常并优化整体系统性能。 近年来,开源日志管理解决方案在大家寻求灵活且经济有效的方式来管理现代系统典型的大量日志数据时,获得了显著的关注。 这些工具为商业产品提供了有力的替代方案,使各种规模的企业都能有效地管理日志数据。 在这篇文章中,我们将讨...
    2023-07-25 00:00:00 | Trace
  • 分布式链路追踪-05-mdc 等信息如何跨线程? Log4j2 与 logback 的实现方式
    背景 日志组件与 slf4j 整合之后,使用的是 slf4j 的 MDC。 快速实现 跨线程时,实现方式。 log4j2 您可以将 log4j2.component.properties 文件放在类路径中来控制 Log4j 2 行为的各个方面。 例如log4j2.component.properties的内容: # https://logging.apache.org/log4...
    2023-07-25 00:00:00 | Trace
  • 分布式链路追踪-05-mdc 等信息如何跨线程? InheritableThreadLocal
    背景 我们希望实现全链路信息,但是代码中一般都会异步的线程处理。 解决思路 我们可以对以前的 Runable 和 Callable 进行增强。 可以使用 ali 已经存在的实现方式。 TransmittableThreadLocal (TTL) 解决异步执行时上下文传递的问题 核心的实现思路如下: 1)异步执行前,把当前线程的 MDC 信息放入执行对象中。 2)异步执...
    2023-07-25 00:00:00 | Trace
  • 分布式链路追踪-05-mdc 等信息如何跨线程? 通过封装的方式
    背景 我们希望实现全链路信息,但是代码中一般都会异步的线程处理。 MDC介绍 简介: MDC(Mapped Diagnostic Context,映射调试上下文)是 log4j 、logback及log4j2 提供的一种方便在多线程条件下记录日志的功能。 MDC 可以看成是一个与当前线程绑定的哈希表,可以往其中添加键值对。MDC 中包含的内容可以被同一线程中执行的代码所访问。 当...
    2023-07-25 00:00:00 | Trace
  • 分布式链路追踪-04-全链路日志追踪 http、dubbo、mq
    目的 目前许多系统项目之间的调用,有基于微服务的,有通过HTTP请求的,还有通过mq的。 那么在处理一次请求的时候,可能会调用多个服务或者调用多个其他系统功能,这样就会产生很多的日志,此时,如果想查看这一次调用的完整的请求链路的日志时,就会变得比较困难,虽然我们有一些集中的日志收集工具比如ELK,我们需要把这一些日志串联起来,这个问题很关键,因为如果没有串联起来,排查日志就是一件很困难的...
    2023-07-25 00:00:00 | Trace
  • 分布式链路追踪-03-Jaeger、Zipkin、skywalking 中的 span 是如何设计的?
    开源项目 自动日志输出 https://github.com/houbb/auto-log Jaeger、Zipkin 中的 spanId 是如何生成的? 在 Jaeger 和 Zipkin 这两个分布式跟踪系统中,Span ID 是通过不同的方法生成的。 下面分别介绍它们的生成方式: Jaeger 中的 Span ID 生成: 在 Jaeger 中,Span ID 是通...
    2023-07-25 00:00:00 | Trace