亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

jar 內部 xml 配置更改和應用程序重啟后,如何使 SLF4J+Logback 刷新設置?

jar 內部 xml 配置更改和應用程序重啟后,如何使 SLF4J+Logback 刷新設置?

慕碼人8056858 2023-06-14 13:56:58
我在我的桌面應用程序中使用SLF4Jwith 。Logback應用程序可以找到配置文件(target/classes/logback.xml)并以正確的方式配置記錄器。但是當我更改配置文件 ( <root level="debug">) 并重新啟動應用程序時,我的記錄器設置沒有任何變化。這是我的配置:<configuration debug="true" scan="true" scanPeriod="10 seconds">    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">        <encoder>            <pattern>${consoleLayoutPattern}</pattern>        </encoder>    </appender>    <appender name="LOG_FILE"        class="ch.qos.logback.core.rolling.RollingFileAppender">        <file>${fileName}</file>        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">            <fileNamePattern>${filePattern}</fileNamePattern>            <maxHistory>60</maxHistory>            <totalSizeCap>3GB</totalSizeCap>        </rollingPolicy>        <encoder>            <pattern>${rollingFilePatternLayoutPattern}</pattern>        </encoder>    </appender>    <root level="error">        <appender-ref ref="LOG_FILE" />        <appender-ref ref="CONSOLE" />    </root></configuration>我做錯了什么?是否有任何解決方案可以xml在應用程序重啟后跟蹤 jar 內部配置更改并刷新日志記錄設置?
查看完整描述

1 回答

?
白衣非少年

TA貢獻1155條經驗 獲得超0個贊

為了不重新構建您的項目,您實際上必須將日志配置文件放在項目之外。我的意思是在您的應用程序屬性中放置此文件的路徑。

application.properties如果您使用的是 Spring Boot,則可以像這樣在文件中配置日志配置文件的路徑:

logging.config=/home/path_to/logback.xml

當您啟動您的應用程序時執行此操作,它將使用指定的應用程序,您將不必重建您的項目。

由于此路徑可能會根據您的環境而變化,我強烈建議您在暫存或生產環境中外部化日志配置文件,如前所述,但也使用外部 application.properties 文件。

您可以在啟動 Java 程序時簡單地執行此操作:

java?-Dspring.config.location=file:///home/.../application.properties


查看完整回答
反對 回復 2023-06-14
  • 1 回答
  • 0 關注
  • 138 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號