Tomcat服務(wù)器日志超詳細(xì)講解

這些日志文件均來自Tomcat服務(wù)器,分別記錄不同維度的運(yùn)行和操作信息,具體如下:
catalina.out
Tomcat的核心日志文件,記錄Tomcat服務(wù)器自身的啟動(dòng)、停止、運(yùn)行過程中的系統(tǒng)級(jí)信息,包括:- Tomcat啟動(dòng)時(shí)的初始化日志(如端口綁定、組件加載等);
- 服務(wù)器運(yùn)行中的錯(cuò)誤信息(如配置錯(cuò)誤、組件異常等);
- 部署在Tomcat上的應(yīng)用程序輸出的標(biāo)準(zhǔn)日志(如應(yīng)用的
System.out/System.err打印內(nèi)容、未指定輸出路徑的日志框架輸出等)。
host-manager.2025-07-24.log
與Tomcat的host-manager管理應(yīng)用相關(guān)的日志。host-manager是Tomcat內(nèi)置的虛擬主機(jī)管理工具(通過http://localhost:8080/host-manager訪問),用于管理虛擬主機(jī)(如添加、刪除、配置虛擬主機(jī))。
該日志記錄:- 通過
host-manager工具執(zhí)行的操作(如創(chuàng)建虛擬主機(jī)、修改配置等); - 訪問
host-manager的請(qǐng)求記錄、權(quán)限驗(yàn)證結(jié)果; - 操作過程中出現(xiàn)的錯(cuò)誤或異常信息。
- 通過
localhost.2025-07-28.log
與Tomcat默認(rèn)虛擬主機(jī)(localhost)相關(guān)的應(yīng)用程序日志。Tomcat中“虛擬主機(jī)”用于隔離不同域名/應(yīng)用的部署,localhost是默認(rèn)虛擬主機(jī)。
該日志主要記錄:- 部署在
localhost虛擬主機(jī)上的應(yīng)用程序的運(yùn)行日志(如Servlet初始化、過濾器執(zhí)行、應(yīng)用內(nèi)部異常等); - 與該虛擬主機(jī)相關(guān)的系統(tǒng)事件(如部署/卸載應(yīng)用、配置加載等)。
- 部署在
localhost_access_log.2025-07-26.txt
localhost虛擬主機(jī)的HTTP訪問日志,記錄所有對(duì)該虛擬主機(jī)上應(yīng)用的HTTP請(qǐng)求詳情,格式通常包含:- 訪問時(shí)間、客戶端IP地址;
- 請(qǐng)求方法(如GET/POST)、請(qǐng)求路徑;
- 響應(yīng)狀態(tài)碼(如200/404/500);
- 響應(yīng)大小、請(qǐng)求耗時(shí);
- 客戶端瀏覽器/工具標(biāo)識(shí)(User-Agent)等。
用于分析訪問量、排查異常請(qǐng)求等。
manager.2025-07-24.log
與Tomcat的manager管理應(yīng)用相關(guān)的日志。manager是Tomcat內(nèi)置的應(yīng)用管理工具(通過http://localhost:8080/manager訪問),用于部署、啟動(dòng)、停止、卸載應(yīng)用程序等。
該日志記錄:- 通過
manager工具執(zhí)行的操作(如部署WAR包、重啟應(yīng)用、查看狀態(tài)等); - 訪問
manager的請(qǐng)求記錄、權(quán)限驗(yàn)證結(jié)果; - 操作過程中出現(xiàn)的錯(cuò)誤或異常信息(如部署失敗、權(quán)限不足等)。
- 通過
總結(jié):這些日志分別覆蓋了Tomcat服務(wù)器核心運(yùn)行、虛擬主機(jī)管理、應(yīng)用管理、應(yīng)用運(yùn)行及HTTP訪問的全鏈路信息,是排查Tomcat及應(yīng)用問題的重要依據(jù)。
Tomcat 日志的自動(dòng)切割和保留機(jī)制,取決于其日志配置(默認(rèn)通過 conf/logging.properties 配置)和是否額外引入了外部工具(如 logrotate),具體情況如下:
1.帶日期的日志(如 host-manager.2025-07-24.log、localhost.2025-07-28.log 等)
這些日志屬于 按日期滾動(dòng)的日志,默認(rèn)情況下:
- 自動(dòng)切割:Tomcat 默認(rèn)配置中,這類日志會(huì)通過
java.util.logging框架按 天 自動(dòng)切割(即每天生成一個(gè)新的日志文件,文件名帶上當(dāng)天日期)。例如,7月24日的操作會(huì)記錄到host-manager.2025-07-24.log,7月25日則自動(dòng)切換到host-manager.2025-07-25.log,舊文件不再寫入。 - 自動(dòng)保留:Tomcat 默認(rèn)不會(huì)自動(dòng)刪除舊日志,所有歷史日志文件會(huì)一直保留在
logs目錄下,直到手動(dòng)刪除或通過外部工具清理。
2.catalina.out
這是 Tomcat 的核心控制臺(tái)日志,默認(rèn)情況下:
- 自動(dòng)切割:Tomcat 原生不支持對(duì)
catalina.out進(jìn)行自動(dòng)切割,它會(huì)一直以追加方式寫入同一個(gè)文件,隨著時(shí)間推移文件會(huì)越來越大(可能占用大量磁盤空間)。 - 自動(dòng)保留:由于默認(rèn)不切割,自然也不存在“保留最近幾天”的機(jī)制,需要手動(dòng)配置切割工具(如
logrotate、cronolog等)來實(shí)現(xiàn)按大小或按時(shí)間切割,并設(shè)置保留策略(如保留30天的歷史文件)。
如何實(shí)現(xiàn)自動(dòng)保留最近幾天的日志?
如果需要自動(dòng)清理舊日志(保留最近 N 天),需額外配置:
- 對(duì)于按日期滾動(dòng)的日志:可修改
conf/logging.properties,通過配置maxDays參數(shù)限制保留天數(shù)(需 Tomcat 8.5+ 版本,舊版本不支持)。例如:# 對(duì) localhost 日志設(shè)置保留最近7天 1localhost.org.apache.juli.AsyncFileHandler.maxDays = 7
- 對(duì)于 catalina.out:需通過外部工具(如 Linux 的
logrotate)配置切割和保留策略。例如,創(chuàng)建logrotate配置文件,設(shè)置按天切割、保留30天日志,并自動(dòng)刪除更舊的文件。
總結(jié):
- 帶日期的日志默認(rèn) 按天自動(dòng)切割,但不自動(dòng)刪除;
catalina.out默認(rèn) 不切割、不自動(dòng)刪除;- 若需“自動(dòng)保留最近幾天”,需手動(dòng)配置 Tomcat 日志參數(shù)(針對(duì)帶日期的日志)或依賴外部工具(針對(duì)
catalina.out)。
到此這篇關(guān)于Tomcat服務(wù)器日志超詳細(xì)講解的文章就介紹到這了,更多相關(guān)Tomcat服務(wù)器日志內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
tomcat啟動(dòng)startup.bat一閃而過問題的解決方法【親測(cè)有效】
這篇文章主要介紹了tomcat啟動(dòng)startup.bat一閃而過問題的解決方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2018-05-05
IntelliJ?IDEA中配置Tomcat超詳細(xì)教程
這篇文章主要介紹了IntelliJ?IDEA中配置Tomcat超詳細(xì)教程,需要的朋友可以參考下2022-08-08
Web項(xiàng)目打成war包部署Tomcat時(shí)運(yùn)行startup.bat直接閃退部署失敗的快速解決方案
這篇文章主要介紹了Web項(xiàng)目打成war包部署Tomcat時(shí)運(yùn)行startup.bat直接閃退部署失敗解決方案,需要的朋友可以參考下2018-01-01
Windows操作系統(tǒng)部署Tomcat的詳細(xì)過程
Tomcat是一個(gè)開源的Java Servlet容器,用于處理Java Web應(yīng)用程序的請(qǐng)求和響應(yīng),下面通過本文給大家介紹Windows操作系統(tǒng)部署Tomcat詳細(xì)講解,感興趣的朋友一起看看吧2025-05-05
Tomcat Nginx Redis實(shí)現(xiàn)session共享過程圖解
這篇文章主要介紹了Tomcat Nginx Redis實(shí)現(xiàn)session共享過程圖解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07

