From 8d314bdcea78c596bb2840202148bc0617e8d43e Mon Sep 17 00:00:00 2001 From: zhengweilin Date: Fri, 11 Apr 2025 10:31:03 +0800 Subject: [PATCH] =?UTF-8?q?fix(sj=5F1.4.0):=20SnailLog4jAppender=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E4=BE=9D=E8=B5=96=EF=BC=8C=E8=A7=A3=E5=86=B3CVE=20log?= =?UTF-8?q?4j=E6=BC=8F=E6=B4=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/appender/SnailLog4jAppender.java | 104 ------------------ 1 file changed, 104 deletions(-) delete mode 100644 snail-job-client/snail-job-client-common/src/main/java/com/aizuda/snailjob/client/common/appender/SnailLog4jAppender.java diff --git a/snail-job-client/snail-job-client-common/src/main/java/com/aizuda/snailjob/client/common/appender/SnailLog4jAppender.java b/snail-job-client/snail-job-client-common/src/main/java/com/aizuda/snailjob/client/common/appender/SnailLog4jAppender.java deleted file mode 100644 index 98c630217..000000000 --- a/snail-job-client/snail-job-client-common/src/main/java/com/aizuda/snailjob/client/common/appender/SnailLog4jAppender.java +++ /dev/null @@ -1,104 +0,0 @@ -/* - * Copyright (c) 2024 . - * - * SnailJob - 灵活,可靠和快速的分布式任务重试和分布式任务调度平台 - * > ✅️ 可重放,可管控、为提高分布式业务系统一致性的分布式任务重试平台 - * > ✅️ 支持秒级、可中断、可编排的高性能分布式任务调度平台 - * - * Aizuda/SnailJob 采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点: - * - * - * 1. 不得修改产品相关代码的源码头注释和出处; - * 2. 不得应用于危害国家安全、荣誉和利益的行为,不能以任何形式用于非法目的; - * - */ -package com.aizuda.snailjob.client.common.appender; - -import com.aizuda.snailjob.client.common.log.report.LogReportFactory; -import com.aizuda.snailjob.client.common.log.support.SnailJobLogManager; -import com.aizuda.snailjob.client.common.rpc.client.NettyChannel; -import com.aizuda.snailjob.common.log.constant.LogFieldConstants; -import com.aizuda.snailjob.common.log.dto.LogContentDTO; -import org.apache.log4j.AppenderSkeleton; -import org.apache.log4j.MDC; -import org.apache.log4j.spi.LoggingEvent; -import org.apache.log4j.spi.ThrowableInformation; - -import java.util.Objects; -import java.util.Optional; - -/** - * @author wodeyangzipingpingwuqi - * @date 2023-12-27 - * @since 2.6.0 - */ -public class SnailLog4jAppender extends AppenderSkeleton { - - @Override - public void activateOptions() { - super.activateOptions(); - } - - @Override - protected void append(LoggingEvent event) { - - // Not job context - if (Objects.isNull(SnailJobLogManager.getLogMeta()) || Objects.isNull(MDC.get(LogFieldConstants.MDC_REMOTE))) { - return; - } - - MDC.remove(LogFieldConstants.MDC_REMOTE); - LogContentDTO logContentDTO = new LogContentDTO(); - logContentDTO.addTimeStamp(event.getTimeStamp()); - logContentDTO.addLevelField(event.getLevel().toString()); - logContentDTO.addThreadField(event.getThreadName()); - logContentDTO.addMessageField(event.getMessage().toString()); - logContentDTO.addLocationField(event.getLocationInformation().fullInfo); - logContentDTO.addThrowableField(getThrowableField(event)); - logContentDTO.addHostField(NettyChannel.getClientHost()); - logContentDTO.addPortField(NettyChannel.getClientPort()); - - // slidingWindow syncReportLog - Optional.ofNullable(LogReportFactory.get()).ifPresent(logReport -> logReport.report(logContentDTO)); - } - - @Override - public void close() { - } - - @Override - public boolean requiresLayout() { - return true; - } - - private String getThrowableField(LoggingEvent event) { - String throwable = getThrowableStr(event); - if (throwable != null) { - return throwable; - } - return null; - } - - private String getThrowableStr(LoggingEvent event) { - ThrowableInformation throwable = event.getThrowableInformation(); - if (throwable == null) { - return null; - } - StringBuilder sb = new StringBuilder(); - boolean isFirst = true; - int stackDeep = 0; - for (String s : throwable.getThrowableStrRep()) { - if (isFirst) { - isFirst = false; - } else { - sb.append(System.getProperty("line.separator")); - } - sb.append(s); - // 最多显示30行 - if (++stackDeep >= 30) { - break; - } - } - return sb.toString(); - } -}