如何在JBoss WildFly 8 自定义log4j日志

最近在 JBoss WildFly 8 下部署 Web应用,自定义的 log4j 日志不工作。console下无日志输出,用System.out.println都不输出内容到console。

原因是JBoss WildFly 8 自带了日志功能,其中包含了log4j。

解决办法:

第一步:在standalone\configuration\standalone.xml 中找到如下配置信息

  <profile>
        <subsystem xmlns="urn:jboss:domain:logging:2.0">
            <console-handler name="CONSOLE">
                <level name="INFO"/>
                <formatter>
                    <named-formatter name="COLOR-PATTERN"/>
                </formatter>
            </console-handler>

在<subsystem xmlns="urn:jboss:domain:logging:2.0">下面添加 <use-deployment-logging-config value="false"/>

添加后为

  <profile>
        <subsystem xmlns="urn:jboss:domain:logging:2.0">
            <use-deployment-logging-config value="false"/>
            <console-handler name="CONSOLE">
                <level name="INFO"/>
                <formatter>
                    <named-formatter name="COLOR-PATTERN"/>
                </formatter>
            </console-handler>

第二步:在Web应用下添加WEB-INF/classes/jboss-deployment-structure.xml 部署文件,内容如下

<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure
    xmlns="urn:jboss:deployment-structure:1.2"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <deployment>
        <exclusions>
            <module name="org.apache.log4j"></module>
        </exclusions>
    </deployment>
</jboss-deployment-structure>

重新启动JBoss WildFly 8,日志按WEB-INF/classes/log4j.properties 中自定义的格式输出了。

时间: 2024-10-05 05:19:35

如何在JBoss WildFly 8 自定义log4j日志的相关文章

Log4J日志配置详解和自定义log4j日志级别及输出日志到不同文件实现方法

Log4J日志配置详解 一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders(输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使用这三个组件可以轻松地记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置. 1.Loggers Loggers组件在此系统中被分为五个级别:DEBUG.INFO.WARN.ERROR和FATAL.这五个级别是有顺序的,DEBUG < INFO < WARN <

自定义log4j日志级别

转载自:  http://blog.csdn.net/seven_cm/article/details/26849821 参考了网上资料:http://www.360doc.com/content/13/0527/11/10825198_288498671.shtml 因为项目中需要输出一些特别的日志来做数据统计.如果开启log4j提供的INFO日志级别,每天生成的日志文件就会变得越来越大.这样就得写个定 时任务来删除这个文件.为了只输出所需的日志级别,唯有自己定义一个log4j的级别,这样一来

自定义log4j的appender写es日志

本篇和大家分享的是自定义log4j的appender,用es来记录日志并且通过kibana浏览es记录:就目前互联网或者一些中大型公司通常会用到第三方组合elk,其主要用写数据到es中,然后通过可视化工具kibana来做直观数据查看和统计:本篇内容节点如下: docker快速搭建es,es header,kibana 环境 封装写es工具类 自定义log4j的appender kibana基础使用 docker快速搭建es,kibana,es header 环境 对于爱研究第三方服务的程序员来说

log4j日志基本配置

Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使用这三个组件可以轻松地记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置. 1.Loggers Loggers组件在此系统中被分为五个级别:DEBUG.INFO.WARN.ERROR和FATAL.这五个级别是有顺序的,DEBUG < INFO < WARN < ERROR < FATAL,分别用

Log4J日志配置详解

一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使用这三个组件可以轻松地记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置. 1.Loggers Loggers组件在此系统中被分为五个级别:DEBUG.INFO.WARN.ERROR和FATAL.这五个级别是有顺序的,DEBUG < INFO < WARN < ERROR <

log4j 日志脱敏处理 + java properties文件加载

Java 加载Properties 配置文件: ResourceBundle bundle = ResourceBundle.getBundle("log4j_filter"); // 不要写扩展名 .properties LOG_FILTER_SWITH = bundle.getString("log4j.filter.swith"); LOG_FILTER_KEYS = bundle.getString("log4j.filter.keys"

JAVA log4j日志文件使用

//1.导入jar包,log4j-1.2.17.jar//2.src下创建log4j.properties文件//3.配置properties文件/*log4j.rootLogger(默认是对整个工程生效)=DEBUG,stdout(控制台),a, b, -日志级别(ALL<DEBUG<INFO<WARN<ERROR<FATAL<OFF)log4j.logger.com.hutu=info, stdout,表示该日志只对package com.hutu生效 log4j.

log4j日志输出到web项目指定文件夹

感谢 eric2500 的这篇文章:http://www.cxyclub.cn/n/27860/ 摘要:尝试将log4j的文件日志输出到web工程制定目录,遇到了很多问题,最终在eric2500的指导下搞定,下面是记录. 其原理在于log4j的配置文件支持服务器的vm的环境变量,如${oss.log4j.path},在log4j加载配置文件之前,先用 System.setProperty("","")设置好日志文件路径,这一操作通过一个初始的servlet来实现.

Spring整合log4j日志组件

PHP转Java有一段时间了,最近在学习Spring的一些组件安装.配置及使用.今天学习了log4j作为项目日志操作组件为web开发节省了大量在项目过程中记录日志及日志输送存储的工作. Log4j是Apache的一个开放源代码项目,通过使用Log4j,控制日志信息输送的目的地可以为控制台.文件.数据库.GUI组件.甚至是套接口服务器.NT的事件记录器.UNIX Syslog守护进程等:可以控制每一条日志的信息内容和信息输出格式:通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程: