日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

logback slf4j_强制Tomcat通过SLF4J / Logback登录

發(fā)布時(shí)間:2023/12/3 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 logback slf4j_强制Tomcat通过SLF4J / Logback登录 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

logback slf4j

因此,您將JAR可執(zhí)行Web應(yīng)用程序與Tomcat捆綁在一起 (請(qǐng)務(wù)必先閱讀其中一個(gè))。 但是,一開始就有這些煩人的Tomcat日志,它們獨(dú)立于我們的應(yīng)用程序日志且不可自定義:

Nov 24, 2012 11:44:02 PM org.apache.coyote.AbstractProtocol init INFO: Initializing ProtocolHandler ["http-bio-8080"] Nov 24, 2012 11:44:02 PM org.apache.catalina.core.StandardService startInternal INFO: Starting service Tomcat Nov 24, 2012 11:44:02 PM org.apache.catalina.core.StandardEngine startInternal INFO: Starting Servlet Engine: Apache Tomcat/7.0.30 Nov 24, 2012 11:44:05 PM org.apache.coyote.AbstractProtocol start INFO: Starting ProtocolHandler ["http-bio-8080"]

我真的很想讓他們失望,或者甚至最好將它們保存在某個(gè)地方,因?yàn)樗鼈冇袝r(shí)會(huì)顯示出重大的失敗。 但是我絕對(duì)不想有單獨(dú)的java.util.logging配置。 在閱讀了上一篇文章之后,您是否想知道我如何知道可運(yùn)行的Tomcat JAR支持httpPort參數(shù)和其他幾個(gè)參數(shù)? 好吧,我檢查了資源,但是只尋求幫助就更簡單了:

$ java -jar target/standalone.jar -help usage: java -jar [path to your exec war jar] -ajpPort <ajpPort> ajp port to use -clientAuth enable client authentication for https -D <arg> key=value -extractDirectory <extractDirectory> path to extract war content, default value: .extract -h,--help help -httpPort <httpPort> http port to use -httpProtocol <httpProtocol> http protocol to use: HTTP/1.1 or org.apache.coyote.http11.Http11Nio Protocol -httpsPort <httpsPort> https port to use -keyAlias <keyAlias> alias from keystore for ssl -loggerName <loggerName> logger to use: slf4j to use slf4j bridge on top of jul -obfuscate <password> obfuscate the password and exit -resetExtract clean previous extract directory -serverXmlPath <serverXmlPath> server.xml to use, optional -uriEncoding <uriEncoding> connector uriEncoding default ISO-8859-1 -X,--debug debug

-loggerName參數(shù)看起來很有希望。 第一次嘗試:

$ java -jar target/standalone.jar -loggerName slf4j WARNING: issue configuring slf4j jul bridge, skip it

不好。 再次快速查看源代碼,結(jié)果發(fā)現(xiàn)缺少SLF4J庫。 由于此參數(shù)是在Tomcat引導(dǎo)期間(在部署Web應(yīng)用程序之前)解釋的, slf4j-api.jar Web應(yīng)用程序內(nèi)的slf4j-api.jar不夠,因此它必須可用于根類加載器(相當(dāng)于打包的Tomcat中的/ lib目錄)。 幸運(yùn)的是,插件公開了<extraDependencies />配置參數(shù) :

<configuration><path>/standalone</path><enableNaming>false</enableNaming><finalName>standalone.jar</finalName><charset>utf-8</charset><extraDependencies><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>1.7.2</version></dependency><dependency><groupId>org.slf4j</groupId><artifactId>jul-to-slf4j</artifactId><version>1.7.2</version></dependency><dependency><groupId>ch.qos.logback</groupId><artifactId>logback-classic</artifactId><version>1.0.7</version></dependency><dependency><groupId>ch.qos.logback</groupId><artifactId>logback-core</artifactId><version>1.0.7</version></dependency></extraDependencies> </configuration>

運(yùn)行Tomcat并成功!

00:01:27.110 [main] INFO o.a.coyote.http11.Http11Protocol - Initializing ProtocolHandler ["http-bio-8080"] 00:01:27.127 [main] INFO o.a.catalina.core.StandardService - Starting service Tomcat 00:01:27.128 [main] INFO o.a.catalina.core.StandardEngine - Starting Servlet Engine: Apache Tomcat/7.0.33 00:01:29.645 [main] INFO o.a.coyote.http11.Http11Protocol - Starting ProtocolHandler ["http-bio-8080"]

好吧,不完全是。 如果您每天使用Logback ,則您會(huì)熟悉默認(rèn)的控制臺(tái)日志記錄模式。 我們沒有選擇任何logback.xml 。 根據(jù)我的經(jīng)驗(yàn),似乎將logback.xml外部放置在文件系統(tǒng)中的某個(gè)位置優(yōu)于將其放置在二進(jìn)制文件中,尤其是在啟用自動(dòng)刷新功能的情況下:

<configuration scan="true" scanPeriod="5 seconds"> <!-- ... --> </configuration>

在未指定其他文件的情況下,將一些fallback logback.xml文件放在CLASSPATH的根目錄中,如下所示:

$ java -jar standalone.jar -httpPort=8081 -loggerName=slf4j \ -Dlogback.configurationFile=/etc/foo/logback.xml

最后,干凈且一致的日志記錄,最有可能記錄到單個(gè)文件。

參考: 強(qiáng)制Tomcat從Java和社區(qū)博客上的JCG合作伙伴 Tomasz Nurkiewicz 登錄SLF4J / Logback 。

翻譯自: https://www.javacodegeeks.com/2012/11/forcing-tomcat-to-log-through-slf4jlogback.html

logback slf4j

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

總結(jié)

以上是生活随笔為你收集整理的logback slf4j_强制Tomcat通过SLF4J / Logback登录的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。