Tomcat

僅在 Tomcat 中記錄警告和錯誤

  • April 20, 2015

我正在使用 Tomcat 6 執行 Apache Solr 實例。我用於安裝配置的 Tomcat 的腳本會記錄“所有內容”,這意味著它會生成巨大的日誌文件,因為每個查詢等都被記錄下來。快速增長的日誌文件是“catalina.out”。

我試圖通過更改這些行來將日誌記錄級別設置為 WARNINGlogging.properties

1catalina.org.apache.juli.FileHandler.level = INFO
1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.FileHandler.prefix = catalina.

1catalina.org.apache.juli.FileHandler.level = WARNING
1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.FileHandler.prefix = catalina.

重新啟動 Tomcat 後,我的日誌仍然主要包含 INFO 消息。我嘗試的下一件事是取消註釋將 catalina 日誌記錄級別設置為 WARNING 的範例配置:

# For example, to log debug messages in ContextConfig and HostConfig
# classes and to log only warnings and errors in other
# org.apache.catalina.** classes, uncomment these lines:
org.apache.catalina.level = WARNING

不幸的是,重新啟動 Tomcat 後,我仍然在 catalina.out 中收到大部分 INFO 消息。如何將日誌記錄設置為僅記錄 WARNING 條目?

為了讓你明白我在說什麼,這裡是日誌的一小段摘錄:

413222 [http-127.0.0.1-8080-1] INFO  org.apache.solr.core.SolrCore  – [german] webapp=/solr path=/select params={hl.fragsize=100&spellcheck=true&enableElevation=false&facet=true&facet.mincount=0&spellcheck.maxCollationTries=0&qf=content^40.0+title^5.0+keywords^2.0+tagsH1^5.0+tagsH2H3^3.0+tagsH4H5H6^2.0+tagsInline&hl.simple.pre=<span+class%3D"results-highlight">&q.alt=*:*&json.nl=map&hl.fl=content&wt=json&spellcheck.collate=true&hl=true&rows=10&echoParams=all&debugQuery=true&fl=*,score&bq=(type:tx_useruniluaddress_domain_model_address)^10&start=0&facet.sort=count&q=Charles+B.+Blankart&hl.simple.post=</span>&facet.field=type&fq=siteHash:"e1d2852464cb2a7272d6f8d89e8803a91e22d96e"&fq={!typo3access}-1,0} hits=54 status=0 QTime=469
422236 [autoExpireDocs-13-thread-1] INFO  org.apache.solr.update.processor.DocExpirationUpdateProcessorFactory  – Begining periodic deletion of expired docs
422240 [autoExpireDocs-13-thread-1] INFO  org.apache.solr.update.UpdateHandler  – start commit{,optimize=false,openSearcher=true,waitSearcher=true,expungeDeletes=false,softCommit=true,prepareCommit=false}
422240 [autoExpireDocs-13-thread-1] INFO  org.apache.solr.core.SolrCore  – SolrIndexSearcher has not changed - not re-opening: org.apache.solr.search.SolrIndexSearcher
422241 [autoExpireDocs-13-thread-1] INFO  org.apache.solr.update.UpdateHandler  – end_commit_flush

我終於發現這就像打開 Solr 管理面板並轉到側面導航中的 Logging -> Level 一樣簡單。在那裡,您可以將日誌記錄級別設置為 WARNING。

這僅設置 Solr 目前執行的日誌記錄級別。一旦 Solr 重新啟動,它就會重置為配置的設置。

tomcat/lib/log4j.properties該設置可以在可以覆蓋所有日誌記錄設置的文件中進行配置,例如

# Disables the TransactionLog
log4j.logger.org.apache.solr.update.TransactionLog=OFF
# Sets the general logging threshold to WARN
log4j.logger.org.apache.solr=WARN

可以在此處找到有關日誌記錄的更多資訊。

引用自:https://serverfault.com/questions/622679