From 2bb243383be97f4aaa8f0376889da0b262b06bf7 Mon Sep 17 00:00:00 2001 From: huguanghan Date: Mon, 30 Dec 2024 09:45:58 +0800 Subject: [PATCH] =?UTF-8?q?=E6=97=A5=E5=BF=97=E5=8A=A8=E6=80=81=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E5=88=A0=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/controller/LoggerController.java | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/das/src/main/java/com/das/modules/admin/controller/LoggerController.java b/das/src/main/java/com/das/modules/admin/controller/LoggerController.java index cf41ce9a..415cb7d0 100644 --- a/das/src/main/java/com/das/modules/admin/controller/LoggerController.java +++ b/das/src/main/java/com/das/modules/admin/controller/LoggerController.java @@ -49,4 +49,29 @@ public class LoggerController { return R.fail(String.format("Invalid log level [%s]. Valid levels: TRACE, DEBUG, INFO, WARN, ERROR, FATAL.", level)); } } + + /** + * 删除指定日志配置 + * + * @param loggerName 日志名称 + * @return 删除结果 + */ + @PostMapping("/delete") + public R deleteLogLevel(String loggerName) { + try { + LoggerContext context = (LoggerContext) LogManager.getContext(false); + LoggerConfig loggerConfig = context.getConfiguration().getLoggerConfig(loggerName); + if (loggerConfig.getName().equals(loggerName)) { + context.getConfiguration().removeLogger(loggerName); + context.updateLoggers(); + logger.info("Deleted logger [{}]", loggerName); + return R.success(String.format("Logger [%s] configuration deleted, using parent level now.", loggerName)); + } else { + return R.fail(String.format("Logger [%s] does not have a specific configuration.", loggerName)); + } + } catch (Exception e) { + logger.error("Failed to delete logger [{}]", loggerName, e); + return R.fail(String.format("Failed to delete logger [%s]: %s", loggerName, e.getMessage())); + } + } } \ No newline at end of file