黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

Tomca教程
Tomcat Manager
Tomcat Realm 配置
Tomcat 安全管理
Tomcat JNDI 資源
Tomcat JDBC 數據源
Tomcat 類加載機制
Tomcat JSPs
Tomcat SSL/TLS配置
Tomcat SSI
Tomcat CGI
Tomcat 代理支持
Tomcat MBean 描述符
Tomcat 默認 Servlet
Tomcat 集群
Tomcat 連接器
Tomcat監控與管理
Tomcat 日志機制
Tomcat 基于 APR 的原生庫
Tomcat 虛擬主機
Tomcat 高級 IO 機制
Tomcat 附加組件
Tomcat 安全性注意事項
Tomcat Windows 服務
Tomcat Windows 認證
Tomcat 的 JDBC 連接池
Tomcat WebSocket 支持
Tomcat 重寫機制

使用 java.util.logging(默認)

JDK 所提供的默認 java.util.logging 實現功能太過局限,所以根本沒有什么使用價值。其關鍵局限在于不能實現針對每一應用進行日志記錄,因為配置是針對每一 VM 的。所以按照默認配置,Tomcat 會用 JULI 這種非常適用于容器的實現來代替默認的 LogManager 實現,從而避免了 LogManager 的缺點。

跟標準 JDK 的 java.util.logging 一樣,JULI 也支持同樣的配置機制,或者使用編程方式,或者指定屬性值。它與 java.util.logging 的不同在于,它可以分別設置每一個類加載器屬性文件(能夠啟用簡單的、便于重新部署的應用配置),屬性文件還支持擴展構造,能夠更加自由地定義 handle 并將其指定給 logger。

JULI 是默認啟用的,除了普通的全局 java.util.logging 配置之外,它支持每個類加載器配置。這意味著可以在下列層級來配置日志:

  • 全局范圍。${catalina.base}/conf/logging.properties 文件。該文件通過由啟動腳本設置的系統屬性 java.util.logging.config.file 來指定。如果它不可讀或沒有配置,默認采用 JRE 中的 ${java.home}/lib/logging.properties 文件。
  • 在 Web 應用范圍內。該文件為 WEB-INF/classes/logging.properties。

JRE 中默認的 logging.properties 指定了 ConsoleHandler,用于將日志輸出至 System.err。Tomcat 中默認的 conf/logging.properties 也添加了幾個能夠寫入文件的 FileHandlers。

handler 的日志級別容差值默認為 INFO,取值范圍為:SEVERE、WARNING、INFO、CONFIG、FINE、FINER、FINEST 或 ALL。你也可以從特殊的包中收集日志,然后為這種日志指定相應的級別。

為了啟用 部分 Tomcat 內部的調試日志功能,應該配置適合的 logger 和 handle 來使用 FINEST 或 ALL 級別。比如:

org.apache.catalina.session.level=ALLjava.util.logging.ConsoleHandler.level=ALL

當啟用調試日志功能時,建議將范圍盡量縮小,因為該功能會產生大量信息。

JULI 所使用的配置與純 java.util.logging 所支持的配置基本相同,只不過使用了一些擴展,以便更靈活地配置 logger 和 handler。主要的差別在于:

  • handler 名稱前可以加上前綴,所以同一類可以實例化出多個 handler。前綴是一個以數字開頭的字符串,并以 . 結尾。比如 22foobar. 就是個有效的前綴。
  • 系統屬性

還有一些額外的實現類,它們可以與 Java 所提供的類一起使用。在這些類中,最著名的就是 org.apache.juli.FileHandler。

org.apache.juli.FileHandler 支持日志緩存。日志緩存默認是沒有啟用的。使用 handler 的 bufferSize 屬性可以配置它:屬性值為 0 時,代表使用系統默認的緩存(通常使用 8k 緩存);屬性值小于 0 時,將在每個日志寫入上強制使用 writer flush(將緩存區中的數據強制寫出到系統輸出)功能;屬性值大于 0 時,則使用帶有定義值的 BufferedOutputStream 類——但要注意的是,這也將應用于系統默認的緩存。

以下是一個 $CATALINA_BASE/conf 中的 logging.properties 文件:

handlers = 1catalina.org.apache.juli.FileHandler, \
           2localhost.org.apache.juli.FileHandler, \
           3manager.org.apache.juli.FileHandler, \
           java.util.logging.ConsoleHandler
.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
############################################################# Handler specific properties.# Describes specific configuration info for Handlers.############################################################
1catalina.org.apache.juli.FileHandler.level = FINE1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs1catalina.org.apache.juli.FileHandler.prefix = catalina.
2localhost.org.apache.juli.FileHandler.level = FINE2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs2localhost.org.apache.juli.FileHandler.prefix = localhost.
3manager.org.apache.juli.FileHandler.level = FINE3manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs3manager.org.apache.juli.FileHandler.prefix = manager.3manager.org.apache.juli.FileHandler.bufferSize = 16384
java.util.logging.ConsoleHandler.level = FINE
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
############################################################# Facility specific properties.# Provides extra control for each logger.############################################################
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = \
   2localhost.org.apache.juli.FileHandler

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = \
   3manager.org.apache.juli.FileHandler
# For example, set the org.apache.catalina.util.LifecycleBase logger to log# each component that extends LifecycleBase changing state:#org.apache.catalina.util.LifecycleBase.level = FINE

下例是一個用于 servlet-examples 應用的 WEB-INF/classes 中的 logging.properties 文件:

handlers = org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
############################################################# Handler specific properties.# Describes specific configuration info for Handlers.############################################################

org.apache.juli.FileHandler.level = FINE
org.apache.juli.FileHandler.directory = ${catalina.base}/logs
org.apache.juli.FileHandler.prefix = ${classloader.webappName}.

java.util.logging.ConsoleHandler.level = FINE
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter

1. 文檔引用

查看下列資源獲取額外的詳細信息:

  • org.apache.juli 包的相關 Tomcat 文檔。
  • java.util.logging 包的 Oracle Java 6 文檔。

2. 生產環境使用中的注意事項

可能需要注意以下方面:

  • 將 ConsoleHandler 從配置中移除。默認(多謝 .handlers 設置)日志會使用 FileHandler 和 ConsoleHandler。后者的輸出經常會被捕獲到一個文件中,比如 catalina.out。從而導致同一消息可能生成了兩個副本。
  • 對于不使用的應用(比如 host-manager),可以考慮將 FileHandlers 移除。
  • handler 默認使用系統缺省編碼來寫入日志文件,通過 encoding 屬性可以修改設置,詳情查看相關的 javadoc 文檔。
  • 配置 Access log 。
全部教程
主站蜘蛛池模板: 最新中文字幕日本 | 天天夜夜狠狠一区二区三区 | 日本免费成人网 | 亚洲一级高清在线中文字幕 | 一级黄色片在线看 | 国产成人精品精品欧美 | 重口变态xxxx | 日韩黄色在线观看 | 好好的日视频www | 精品国产高清自在线一区二区三区 | 一级黄色片免费看 | 99久9在线视频 | 毛片手机在线看 | 国产色手机在线观看播放 | 天天爽夜夜 | 三级福利视频 | 国产天天射 | 一级毛片在线免费观看 | 成人欧美网站 | 欧美日韩无线码在线观看 | 国内外精品免费视频 | 中文字幕在线免费观看视频 | 亚洲成a人片在线播放观看国产 | av小说网站 | 人人成人免费公开视频 | 黄色网址免费在线观看 | 无遮挡h黄漫画免费观看 | 亚洲一区二区精品视频 | 免费国产成人高清在线看软件 | 亚洲精品亚洲人成在线播放 | 亚洲图片 中文字幕 | 国产一国产一级毛片视频在线 | 免播放器在线 | 日韩免费视频一区 | 一个人看的www的视频免费 | 黄色片日本网站 | 小明日韩在线看看永久区域 | 欧美成人性色生活片免费在线观看 | 日韩黄色大片免费看 | 成人在线免费视频播放 | 欧美激情αv一区二区三区 欧美激情xxxx |