2017-05-11 60 views
0

我有一個在谷歌kubernetes託管的容器引擎中運行的spring啓動java服務。 Java服務通過slf4j api記錄(日誌被轉發到谷歌堆棧驅動程序,但這不在此問題的範圍內)。如何在運行時更改kubernetes託管服務中的Java slf4j記錄器的日誌級別?

我可以通過更改kubernetes部署文件更改日誌記錄級別:

spec: 
    template: 
    spec: 
     containers: 
     env: 
     - name: JAVA_OPTS 
      value: -Xmx1g -Dlogging.level.com.example=DEBUG 

這工作,但它需要我重新部署服務,以改變(通過應用更新的deloyment yaml文件重啓容器)日誌級別。如果我與運行常規war文件的「常規」tomcat服務器進行比較,它可以將文件監視放到logback.xml-文件中,並且此文件中的更改將在日誌中生效,而無需重新啓動tomcat。有沒有類似的方式來控制kubernetes管理的spring引導服務在運行時的日誌級別?

+0

請檢查這將幫助你[動態地改變SLF4J日誌級別。(http://stackoverflow.com/questions/13442967/how-to-dynamically-change-log-level-in- SLF4J或 - log4j的) – SubbaReddy

回答

0

您是否嘗試過使用logger endpoint?介紹在春季啓動1.5

我想這可以確定如果你有1個實例,但如果有多個也許這是一個壞的方法。

相關問題