From 80b6cbfc9c861469146318d0b3dd5f8b8b525b8a Mon Sep 17 00:00:00 2001 From: xiejun <xiejun@vci-tech.com> Date: 星期五, 01 十一月 2024 15:11:19 +0800 Subject: [PATCH] Revert "集成获取mdm分发通用数据格式接口集成" --- Source/BladeX-Tool/blade-starter-log/src/main/java/org/springblade/core/log/publisher/ErrorLogPublisher.java | 63 +++++++++++++++++++++++++++++++ 1 files changed, 63 insertions(+), 0 deletions(-) diff --git a/Source/BladeX-Tool/blade-starter-log/src/main/java/org/springblade/core/log/publisher/ErrorLogPublisher.java b/Source/BladeX-Tool/blade-starter-log/src/main/java/org/springblade/core/log/publisher/ErrorLogPublisher.java new file mode 100644 index 0000000..b8c8f44 --- /dev/null +++ b/Source/BladeX-Tool/blade-starter-log/src/main/java/org/springblade/core/log/publisher/ErrorLogPublisher.java @@ -0,0 +1,63 @@ +/* + * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the dreamlu.net developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: Chill 搴勯獮 (smallchill@163.com) + */ + +package org.springblade.core.log.publisher; + +import org.springblade.core.log.constant.EventConstant; +import org.springblade.core.log.event.ErrorLogEvent; +import org.springblade.core.log.model.LogError; +import org.springblade.core.log.utils.LogAbstractUtil; +import org.springblade.core.tool.utils.Exceptions; +import org.springblade.core.tool.utils.Func; +import org.springblade.core.tool.utils.SpringUtil; +import org.springblade.core.tool.utils.WebUtil; + +import javax.servlet.http.HttpServletRequest; +import java.util.HashMap; +import java.util.Map; + +/** + * 寮傚父淇℃伅浜嬩欢鍙戦�� + * + * @author Chill + */ +public class ErrorLogPublisher { + + public static void publishEvent(Throwable error, String requestUri) { + HttpServletRequest request = WebUtil.getRequest(); + LogError logError = new LogError(); + logError.setRequestUri(requestUri); + if (Func.isNotEmpty(error)) { + logError.setStackTrace(Exceptions.getStackTraceAsString(error)); + logError.setExceptionName(error.getClass().getName()); + logError.setMessage(error.getMessage()); + StackTraceElement[] elements = error.getStackTrace(); + if (Func.isNotEmpty(elements)) { + StackTraceElement element = elements[0]; + logError.setMethodName(element.getMethodName()); + logError.setMethodClass(element.getClassName()); + logError.setFileName(element.getFileName()); + logError.setLineNumber(element.getLineNumber()); + } + } + LogAbstractUtil.addRequestInfoToLog(request, logError); + Map<String, Object> event = new HashMap<>(16); + event.put(EventConstant.EVENT_LOG, logError); + SpringUtil.publishEvent(new ErrorLogEvent(event)); + } + +} -- Gitblit v1.9.3