Jboss 7配置日志

1. Jboss7配置日志理论知识介绍

Jboss 7日志可以在XML配置文件和日志管理属性文件内配置。默认日志配置在configuration目录的logging.properties文件内。

通常情况下,对于大多数安装,logging.properties内的默认值已经足够了。如要自定义日志类型,建议在xml配置文(standalone.xml或domain.xml文件,logging subsystem)内配置,可以定义7个主要类别:

<root-logger />

<logger category=”” />

>console-handler />

<file-handler />

<periodic-rotating-file-handler />

<size-rotating-file-handler />

<async-handler />

主要,应该使用XML配置文件,当logging子系统启动后日志管理属性会被忽略。

参考资料:

http://download.csdn.net/detail/lypf19900912/8844043

https://docs.jboss.org/author/display/AS71/Logging+Configuration

2. 示例

下面结合具体的示例解释XML配置文件和日志管理属性是如果记录Jboss 7的日志

1.      XML配置

此处的xml配置指的是standalone.xml或domain.xml文件,他们分别是standalond和domain模式启动的xml配置文件。以standalone.xml为例

Standalone.xml文件中关于日志的配置信息如下:

      <subsystem xmlns="urn:jboss:domain:logging:1.3">
            <console-handler name="CONSOLE">
                <level name="INFO"/>
                <formatter>
                    <pattern-formatter pattern="%K{level}%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
                </formatter>
            </console-handler>
            <periodic-rotating-file-handler name="FILE" autoflush="true">
                <formatter>
                    <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
                </formatter>
                <file relative-to="jboss.server.log.dir" path="server.log"/>
                <suffix value=".yyyy-MM-dd"/>
                <append value="true"/>
            </periodic-rotating-file-handler>
            <logger category="com.arjuna">
                <level name="WARN"/>
            </logger>
            <logger category="org.apache.tomcat.util.modeler">
                <level name="WARN"/>
            </logger>
            <logger category="org.jboss.as.config">
                <level name="DEBUG"/>
            </logger>
            <logger category="sun.rmi">
                <level name="WARN"/>
            </logger>
            <logger category="jacorb">
                <level name="WARN"/>
            </logger>
            <logger category="jacorb.config">
                <level name="ERROR"/>
            </logger>
            <root-logger>
                <level name="INFO"/>
                <handlers>
                    <handler name="CONSOLE"/>
                    <handler name="FILE"/>
                </handlers>
            </root-logger>
        </subsystem>

如下配置做简单的解释:日志输出到console和file。其他file,位于server.log中。日志级别是INFO

我们可以启动一下看看结果

console(控制台)

server.log(日志文件)

2.      Logging-properties(日志管理器)

日志管理器与standalone.xml在同一目录下面,想要使用日志管理器,就必须要删除xml文件中日志的相关配置。为了好区分,日志管理器中日志文件名为server_properties.log

logging.properties

# Note this file has been generated and will be overwritten if a
# logging subsystem has been defined in the XML configuration.

# Additional loggers to configure (the root logger is always configured)
loggers=jacorb,com.arjuna,org.apache.tomcat.util.modeler,org.jboss.as.config,jacorb.config,sun.rmi

logger.level=INFO
logger.handlers=CONSOLE,FILE

logger.jacorb.level=WARN
logger.jacorb.useParentHandlers=true

logger.com.arjuna.level=WARN
logger.com.arjuna.useParentHandlers=true

logger.org.apache.tomcat.util.modeler.level=WARN
logger.org.apache.tomcat.util.modeler.useParentHandlers=true

logger.org.jboss.as.config.level=DEBUG
logger.org.jboss.as.config.useParentHandlers=true

logger.jacorb.config.level=ERROR
logger.jacorb.config.useParentHandlers=true

logger.sun.rmi.level=WARN
logger.sun.rmi.useParentHandlers=true

handler.CONSOLE=org.jboss.logmanager.handlers.ConsoleHandler
handler.CONSOLE.level=INFO
handler.CONSOLE.formatter=CONSOLE
handler.CONSOLE.properties=autoFlush,target,enabled
handler.CONSOLE.autoFlush=true
handler.CONSOLE.target=SYSTEM_OUT
handler.CONSOLE.enabled=true

handler.FILE=org.jboss.logmanager.handlers.PeriodicRotatingFileHandler
handler.FILE.level=ALL
handler.FILE.formatter=FILE
handler.FILE.properties=append,autoFlush,enabled,suffix,fileName
handler.FILE.constructorProperties=fileName,append
handler.FILE.append=true
handler.FILE.autoFlush=true
handler.FILE.enabled=true
handler.FILE.suffix=.yyyy-MM-dd
<span style="font-size:14px;"><span style="color:#ff0000;">handler.FILE.fileName=C\:\\jboss-eap-6.2\\standalone\\log\\server_properties.log</span>
</span>

formatter.CONSOLE=org.jboss.logmanager.formatters.PatternFormatter
formatter.CONSOLE.properties=pattern
formatter.CONSOLE.pattern=%K{level}%d{HH\:mm\:ss,SSS} %-5p [%c] (%t) %s%E%n

formatter.FILE=org.jboss.logmanager.formatters.PatternFormatter
formatter.FILE.properties=pattern
formatter.FILE.constructorProperties=pattern
formatter.FILE.pattern=%d{HH\:mm\:ss,SSS} %-5p [%c] (%t) %s%E%n

结果展示

3.      XML配置和日志管理器的关系

1.  优先级:XML配置高于日志管理器,也就是上面说的使用了XML配置文件,日志管理器就被忽略。

2.  配置XML,会同步到日志管理器中---可以生成多个日志文件,分别记录不同的日志

比如我们在xml中再添加一个FILE_TEST,当我们允许jboss之后,会将FILE_TEST的配置同步到日志管理器中。但是这种同步时单方向的,也就是说只有xml配置同步到日志管理器中,日志管理器中的修改不会同步到xml文件中。

standalone.xml文件中添加FILE_TEST,生成server_TEST.log

      <subsystem xmlns="urn:jboss:domain:logging:1.3">
            <console-handler name="CONSOLE">
                <level name="INFO"/>
                <formatter>
                    <pattern-formatter pattern="%K{level}%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
                </formatter>
            </console-handler>
            <periodic-rotating-file-handler name="FILE" autoflush="true">
                <formatter>
                    <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
                </formatter>
                <file relative-to="jboss.server.log.dir" path="server.log"/>
                <suffix value=".yyyy-MM-dd"/>
                <append value="true"/>
      <span style="font-size:14px;color:#ff0000;">      </periodic-rotating-file-handler>
			<periodic-rotating-file-handler name="FILE_TEST" autoflush="true">
                <formatter>
                    <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
                </formatter>
                <file relative-to="jboss.server.log.dir" path="server_TEST.log"/>
                <suffix value=".yyyy-MM-dd"/>
                <append value="true"/>
            </periodic-rotating-file-handler>	</span>
            <logger category="com.arjuna">
                <level name="WARN"/>
            </logger>
            <logger category="org.apache.tomcat.util.modeler">
                <level name="WARN"/>
            </logger>
            <logger category="org.jboss.as.config">
                <level name="DEBUG"/>
            </logger>
            <logger category="sun.rmi">
                <level name="WARN"/>
            </logger>
            <logger category="jacorb">
                <level name="WARN"/>
            </logger>
            <logger category="jacorb.config">
                <level name="ERROR"/>
            </logger>
            <root-logger>
                <level name="INFO"/>
                <handlers>
                    <handler name="CONSOLE"/>
                    <handler name="FILE"/>
		   <span style="font-size:14px;color:#ff0000;"> <handler name="FILE_TEST"/></span>
                </handlers>
            </root-logger>
        </subsystem>

启动Jboss成功之后,生成的日志文件

查看logging.properties

<span style="font-size:14px;"># Note this file has been generated and will be overwritten if a
# logging subsystem has been defined in the XML configuration.

# Additional loggers to configure (the root logger is always configured)
loggers=jacorb,com.arjuna,org.apache.tomcat.util.modeler,org.jboss.as.config,jacorb.config,sun.rmi

logger.level=INFO
logger.handlers=CONSOLE,FILE,FILE_TEST

logger.jacorb.level=WARN
logger.jacorb.useParentHandlers=true

logger.com.arjuna.level=WARN
logger.com.arjuna.useParentHandlers=true

logger.org.apache.tomcat.util.modeler.level=WARN
logger.org.apache.tomcat.util.modeler.useParentHandlers=true

logger.org.jboss.as.config.level=DEBUG
logger.org.jboss.as.config.useParentHandlers=true

logger.jacorb.config.level=ERROR
logger.jacorb.config.useParentHandlers=true

logger.sun.rmi.level=WARN
logger.sun.rmi.useParentHandlers=true

handler.CONSOLE=org.jboss.logmanager.handlers.ConsoleHandler
handler.CONSOLE.level=INFO
handler.CONSOLE.formatter=CONSOLE
handler.CONSOLE.properties=autoFlush,target,enabled
handler.CONSOLE.autoFlush=true
handler.CONSOLE.target=SYSTEM_OUT
handler.CONSOLE.enabled=true

</span><span style="font-size:14px;color:#ff0000;">handler.FILE_TEST=org.jboss.logmanager.handlers.PeriodicRotatingFileHandler
handler.FILE_TEST.level=ALL
handler.FILE_TEST.formatter=FILE_TEST
handler.FILE_TEST.properties=append,autoFlush,enabled,suffix,fileName
handler.FILE_TEST.append=true
handler.FILE_TEST.autoFlush=true
handler.FILE_TEST.enabled=true
handler.FILE_TEST.suffix=.yyyy-MM-dd
handler.FILE_TEST.fileName=C\:\\jboss-eap-6.2\\standalone\\log\\server_TEST.log</span><span style="font-size:14px;">

handler.FILE=org.jboss.logmanager.handlers.PeriodicRotatingFileHandler
handler.FILE.level=ALL
handler.FILE.formatter=FILE
handler.FILE.properties=append,autoFlush,enabled,suffix,fileName
handler.FILE.constructorProperties=fileName,append
handler.FILE.append=true
handler.FILE.autoFlush=true
handler.FILE.enabled=true
handler.FILE.suffix=.yyyy-MM-dd
handler.FILE.fileName=C\:\\jboss-eap-6.2\\standalone\\log\\server.log

formatter.CONSOLE=org.jboss.logmanager.formatters.PatternFormatter
formatter.CONSOLE.properties=pattern
formatter.CONSOLE.pattern=%K{level}%d{HH\:mm\:ss,SSS} %-5p [%c] (%t) %s%E%n

<span style="color:#ff0000;">formatter.FILE_TEST=org.jboss.logmanager.formatters.PatternFormatter
formatter.FILE_TEST.properties=pattern
formatter.FILE_TEST.constructorProperties=pattern
formatter.FILE_TEST.pattern=%d{HH\:mm\:ss,SSS} %-5p [%c] (%t) %s%E%n
</span>
formatter.FILE=org.jboss.logmanager.formatters.PatternFormatter
formatter.FILE.properties=pattern
formatter.FILE.constructorProperties=pattern
formatter.FILE.pattern=%d{HH\:mm\:ss,SSS} %-5p [%c] (%t) %s%E%n
</span>

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-20 18:58:47

Jboss 7配置日志的相关文章

配置日志文件

org.apache.log4j.Logger详解 1.概述 1.1. 背景 在应用程序中添加日志记录总的来说基于三个目的:监视代码中变量的变化情况,周期性的记录到文件中供其他应用进行统计分析工作:跟踪代码运行时轨迹,作为日后审计的依据:担当集成开发环境中的调试器的作用,向文件或控制台打印代码的调试信息. 最普通的做法就是在代码中嵌入许多的打印语句,这些打印语句可以输出到控制台或文件中,比较好的做法就是构造一个日志操作类来封装此类操作,而不是让一系列的打印语句充斥了代码的主体. http://l

JBOSS安全配置

JBOSS安全配置 概念: JBoss应用服务器(JBoss AS)是一个被广泛使用的开源Java应用服务器. 它是JBoss企业中间件(JEMS)的一部分,并且经常在大型企业中使用. 架构 JBoss的模块架构是建立在JMX底层上的.JMX是一个可复用框架,它为远程(Remote)和本地(Local)管理工具扩展了应用.它的架构是层式架构.他们是实现层(instrumentation layer).代理层(agent layer)和发布层(distribution layer).用户使用管理B

mycat配置日志

1: 1: MySql Host is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts' 解决方法 环境:linux,mysql5.5.21 错误:Host is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts' 原因: 同一个ip在短时间内产生太多(超过mysql数据库ma

vsftp配置日志及其启用本地时间

vsftp配置日志及其启用本地时间 1. 启用vsftp日志 xferlog_enable=YES xferlog_std_format=YES xferlog_file=/var/log/xferlog dual_log_enable=YES vsftpd_log_file=/var/log/vsftpd.log 2. 启用本地时间 use_localtime=YES

osgi + camel + karaf配置日志输出

上篇博文中编了felix的一个简单example,然后演示了example的启动,Activator启动之后进行了控制台输出,但整个example feature的启动过程中那些bundle进行了install过程并没有演示,接下来将演示这一过程. 配置日志 首先对karaf的输出进行日志输出,先前在parent module中pom.xml中配置插件指定配置文件位置,如下所示: <plugin> <groupId>org.apache.maven.plugins</grou

Tomcat集群配置日志服务器

1 整体架构 2 中央日志服务器配置 2.1 配置时钟同步 2.1.1 方式一 中央日志服务器和Tomcat节点均向同一个时钟源(例如:pool.ntp.org)进行对时即可.说明:本小节下面命令均以root用户执行,并且在中央日志服务器和Tomcat节点均要执行. 首先,需要关闭ntpd服务: service ntpd stop chkconfig ntpd off 执行crontab -e,输入下面内容: */5 * * * * ntpdate pool.ntp.org 表示:每隔5分钟向时

微信小程序开发工具的数据,配置,日志等目录在哪儿? 怎么找?

原文地址:http://www.wxapp-union.com/portal.php?mod=view&aid=359 本文由本站halfyawn原创:感谢原创者:如有疑问,请在评论内回复 还是先把问题列出来,让问题来驱动探索: 微信小程序开发工具的数据,配置,日志等目录在哪儿? 怎么找? 首先分析了一下源码,日志目录应该同NW.JS的应用目录相关,,,查查查,,一直查到NW.JS的C++源码,搞得太复杂,大概知道位置,但还是不确切.决定不往这条线找,换另一条路: 把日志文件修改输出到我指定目录

Mysql/Mariadb配置日志

1. 创建日志存放目录: mkdir /var/log/mysql && chown mysql:mysql /var/log/mysql 2.修改Mysql配置日志: vi /etc/my.cnf.d/server.cnf log_output=FILEgeneral_log = 1general_log_file = /var/log/mysql/general.log slow_query_log=1long_query_time=2slow_query_log_file=/var/

srs配置-基本RTMP配置 && 日志配置

1.RTMP URL rtmp://HOST:PORT/app/stream_name rtmp: 协议头 HOST:注意的IP地址或域名 app: 应用名称 stream_name:流名称 2.SRS中基本RTMP的配置 listen              1935; pid                 ./objs/srs.pid; chunk_size          60000; ff_log_dir          ./objs; srs_log_tank        f