diff --git a/src/main/java/com/hospital/front/HospitalFrontApp.java b/src/main/java/com/hospital/front/HospitalFrontApp.java index 059cb8f..d2a765f 100644 --- a/src/main/java/com/hospital/front/HospitalFrontApp.java +++ b/src/main/java/com/hospital/front/HospitalFrontApp.java @@ -1,12 +1,13 @@ package com.hospital.front; import java.io.File; -import java.io.IOException; import java.nio.file.Files; import java.nio.file.Paths; import org.noear.solon.Solon; import org.noear.solon.annotation.SolonMain; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** * 医院前置机主程序启动类。 @@ -20,29 +21,19 @@ import org.noear.solon.annotation.SolonMain; @SolonMain public class HospitalFrontApp { + private static final Logger log = LoggerFactory.getLogger(HospitalFrontApp.class); + /** * 主入口。 */ public static void main(String[] args) { - // TODO 临时诊断代码:打印完整异常因果链,定位注入失败根因后移除 - try { - Solon.start(HospitalFrontApp.class, args); - } catch (Throwable e) { - Throwable t = e; - int depth = 0; - while (t != null && depth < 10) { - System.err.println("=== 因果链[" + depth + "]: " + t.getClass().getName() + ": " + t.getMessage()); - StackTraceElement[] stackTrace = t.getStackTrace(); - for (int i = 0; i < Math.min(10, stackTrace.length); i++) { - System.err.println(" at " + stackTrace[i]); - } - t = t.getCause(); - depth++; - } - System.exit(1); - } + Solon.start(HospitalFrontApp.class, args); long pid = ProcessHandle.current().pid(); - System.out.println("[HospitalFront] 启动完成,PID=" + pid); + // 走 logback 落盘(服务方式运行时控制台不可见,System.out 进不了日志文件) + log.info("启动完成,PID={},激活医院={},端口={}", + pid, + Solon.cfg().get("hospital.active", "?"), + Solon.cfg().get("server.port", "?")); // 写 PID 文件(供 start.bat stop / Agent 升级流程强杀使用) try { File dir = new File("pid"); @@ -58,7 +49,7 @@ public class HospitalFrontApp { new File("pid/hospital-front.pid").delete(); } catch (Exception ignored) { } - System.out.println("[HospitalFront] 优雅停机中..."); + log.info("优雅停机中..."); })); } } diff --git a/src/main/java/com/hospital/front/adapter/HospitalRouter.java b/src/main/java/com/hospital/front/adapter/HospitalRouter.java index 3128632..8c0665b 100644 --- a/src/main/java/com/hospital/front/adapter/HospitalRouter.java +++ b/src/main/java/com/hospital/front/adapter/HospitalRouter.java @@ -2,6 +2,8 @@ package com.hospital.front.adapter; import org.noear.solon.Solon; import org.noear.solon.annotation.Component; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import java.util.HashMap; import java.util.List; @@ -17,6 +19,8 @@ import java.util.Set; @Component public class HospitalRouter { + private static final Logger log = LoggerFactory.getLogger(HospitalRouter.class); + /** 启动激活的医院编码(默认 jinghe) */ private final String activeCode = Solon.cfg().get("hospital.active", "jinghe"); @@ -24,7 +28,8 @@ public class HospitalRouter { private volatile Map map; public HospitalRouter() { - System.out.println("[HospitalRouter] 启动激活医院:" + activeCode); + // 走 logback 落盘(服务方式运行时 System.out 进不了日志文件) + log.info("启动激活医院:{}", activeCode); } /** diff --git a/src/main/resources/app.yml b/src/main/resources/app.yml index 54caf5d..5d4ef2e 100644 --- a/src/main/resources/app.yml +++ b/src/main/resources/app.yml @@ -69,7 +69,7 @@ logging: level: root: INFO com.hospital.front: INFO - org.noear: WARN + org.noear: INFO # ==================================== # Uptime-Kuma 监控(沿用原 hospitalmiddle 逻辑)