Class DefaultLogAPMEventListener

java.lang.Object
tech.riemann.nif.apm.event.APMEventListener
tech.riemann.nif.apm.event.DefaultLogAPMEventListener
All Implemented Interfaces:
EventListener, org.springframework.context.ApplicationListener<APMEvent>

public class DefaultLogAPMEventListener extends APMEventListener
默认日志APM事件监听器

继承自APMEventListener,将APM日志以JSON格式输出到日志系统

主要功能: 1. 自动获取服务器IP地址(用于标识集群中的节点) 2. 设置应用名称到APM日志 3. 将APM日志转换为JSON格式并输出到日志

使用场景: - 适用于开发环境或简单的生产环境 - 日志可以通过ELK等日志收集系统进行分析

注意: - 在Docker/K8s等容器环境中,IP地址可能会变化 - 但IP字段仅用于日志追踪和问题定位,不影响功能

Author:
Kerbores(kerbores@riemann.tech)
  • Constructor Details

    • DefaultLogAPMEventListener

      public DefaultLogAPMEventListener()
  • Method Details

    • init

      @PostConstruct public void init()
      初始化服务器IP地址

      在Bean初始化时执行,获取本机IP地址

      注意:获取失败会抛出异常,因为IP字段是日志的重要标识

    • handleAPMLog

      public void handleAPMLog(APMLog log)
      处理APM日志

      将APM日志转换为JSON格式并输出到日志系统

      Specified by:
      handleAPMLog in class APMEventListener
      Parameters:
      log - APM日志