JBoss AS 7性能调优(四)

 原文:http://www.mastertheboss.com/jboss-performance/jboss-as-7-performance-tuning/page-5

 

Logging调优

记录日志是每一个应用程序的一个重要任务,默认的配置一般只适合开发,但不适用于生产环境。

您切换到生产环境时需要考虑的关键要素是:

1.   选择一个合适的输出日志的处理handler。
2.   选择一个合适的日志级别,它恰好可以提供给你需要的足够信息,不多也不少。
3.   选择一个合适的日志输出格式。

鉴于一般考虑,日志的处理handler,默认配置会启动控制台和文件的日志输出。虽然这可能在开发环境中是合适的,但在生产环境中使用控制台日志输出将会是一个昂贵的处理过程,导致大量的非缓冲I / O。虽然一些应用程序可能适合控制台日志输出,但大多数应用更适合关闭控制台日志输出,只使用文件输出的处理handler。
为了去掉控制台日志,你可以简单地注释掉其处理handler:

<root-logger>

  <level name="INFO"/>

   <handlers>

     <!--   <handler name="CONSOLE"/> -->

   <handler name="FILE"/>

  </handlers>

</root-logger>

下一步是选择正确的日志记录级别。显然,记录的日志越少,发生的I / O就越少,这样您的整个应用程序的性能会更好。默认配置使用“INFO”级别根记录器。你可以考虑提高到较高的级别,如“WARN”或(使用细粒度的approach)改变单一的日志记录类别(category)。

<logger category="org.hibernate">

  <level name="WARN"/>

</logger>

在这个例子中,我们刚才提出的org.hibernate包使用“WARN”级别,这将从Hibernate中输出更加简洁的日志信息。
最后,日志模式(pattern)也会影响您的应用程序的性能。例如,我们使用默认模式格式,如下所示:

<pattern-formatter

 pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>

日志记录模式的详细解释可以在第2章的控制台处理handler内容中找到。从这个基本格式开始,可尽可能考虑添加标志%l,可以通过打印出行号和发出日志的Class来提高你的日志的详细程度:

<pattern-formatter

 pattern="%l %d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>

一旦服务器配置被重新加载,控制台输出下面的日志信息:


虽然这些信息在开发时非常有用,但它会导致移植到生产环境中产生很大的性能负担。
其它可能对你的日志性能造成负面影响的标志有%C(打印出调用者的Class信息),%M(它输出打印日志的方法)和%F(它输出发出日志记录请求的文件名)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值