背景
平台任务主要分3种: flink实时任务, spark任务,还有java任务,spark、flink 我们是运行在yarn 上, 日常排错我们通过查看yarn logs来定位, 但是会对日志存储设置一定的保留时间..., 为了后续更好排查问题,希望能够将spark、flink、java任务都收集起来存储到ES中,提供统一查询服务给用户....针对这个想法,主要要解决几个问题?...调用log4j各组件执行顺序:
实现自定义log4j Appender:
继承log4j公共的基类:AppenderSkeleton
打印日志核心方法:abstract protected void...然后就可以在log4j中使用了
java任务采集
java任务, 只需要引入我们自己实现自定义的log4j Appender, 我们获取到相关的日志信息就可以进行后续操作.