How to exclude log categories from server.log on JBoss AS 7.0.2.Final

Im working with JBoss AS 7.0.2.Final and there is no way to change it.

I tried to configure standalone.xml to create different log files for different categories. My problem is this: ouputs for each registrar are loaded correctly into the specified files, but also written to the server.log file.

There is my configuration for the entire logging subsystem:

<subsystem xmlns="urn:jboss:domain:logging:1.1"> <console-handler name="CONSOLE" autoflush="true"> <level name="INFO"/> <formatter> <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/> </formatter> </console-handler> <periodic-rotating-file-handler name="FILE" autoflush="true"> <level name="INFO"/> <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> <periodic-rotating-file-handler name="REQUEST" autoflush="true"> <level name="INFO"/> <formatter> <pattern-formatter pattern="%m%n"/> </formatter> <file path="/Logs/requests.log"/> <suffix value=".yyyy-MM-dd-HH"/> <append value="true"/> </periodic-rotating-file-handler> <periodic-rotating-file-handler name="ALARMS" autoflush="true"> <level name="INFO"/> <formatter> <pattern-formatter pattern="%m%n"/> </formatter> <file path="/Logs/alarms.log"/> <suffix value=".yyyy-MM-dd-HH"/> <append value="true"/> </periodic-rotating-file-handler> <logger category="com.maucho.alarm" use-parent-handlers="false"> <level name="INFO"/> <handlers> <handler name="ALARMS"/> </handlers> </logger> <logger category="com.maucho.request" use-parent-handlers="false"> <level name="INFO"/> <handlers> <handler name="REQUEST"/> </handlers> </logger> <logger category="com.arjuna"> <level name="WARN"/> </logger> <logger category="org.apache.tomcat.util.modeler"> <level name="WARN"/> </logger> <logger category="sun.rmi"> <level name="WARN"/> </logger> <logger category="com.hp.autopassj"> <level name="WARN"/> </logger> <logger category="org.jboss.as.server.deployment"> <level name="ERROR"/> </logger> <root-logger> <level name="INFO"/> <handlers> <handler name="CONSOLE"/> <handler name="FILE"/> </handlers> </root-logger> </subsystem> 

When AS starts, the standalone.xml file is overwritten and replaces the logger tags without using the -parent-handlers = "false" attribute with nothing, setting the default behavior, use-parent-handlers = "true":

 <subsystem xmlns="urn:jboss:domain:logging:1.1"> <console-handler name="CONSOLE" autoflush="true"> <level name="INFO"/> <formatter> <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/> </formatter> </console-handler> <periodic-rotating-file-handler name="FILE" autoflush="true"> <level name="INFO"/> <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> <periodic-rotating-file-handler name="REQUEST" autoflush="true"> <level name="INFO"/> <formatter> <pattern-formatter pattern="%m%n"/> </formatter> <file path="/Logs/requests.log"/> <suffix value=".yyyy-MM-dd-HH"/> <append value="true"/> </periodic-rotating-file-handler> <periodic-rotating-file-handler name="ALARMS" autoflush="true"> <level name="INFO"/> <formatter> <pattern-formatter pattern="%m%n"/> </formatter> <file path="/Logs/alarms.log"/> <suffix value=".yyyy-MM-dd-HH"/> <append value="true"/> </periodic-rotating-file-handler> <logger category="com.maucho.alarm"> <level name="INFO"/> <handlers> <handler name="ALARMS"/> </handlers> </logger> <logger category="com.maucho.request"> <level name="INFO"/> <handlers> <handler name="REQUEST"/> </handlers> </logger> <logger category="com.arjuna"> <level name="WARN"/> </logger> <logger category="org.apache.tomcat.util.modeler"> <level name="WARN"/> </logger> <logger category="sun.rmi"> <level name="WARN"/> </logger> <logger category="com.hp.autopassj"> <level name="WARN"/> </logger> <logger category="org.jboss.as.server.deployment"> <level name="ERROR"/> </logger> <root-logger> <level name="INFO"/> <handlers> <handler name="CONSOLE"/> <handler name="FILE"/> </handlers> </root-logger> </subsystem> 

The documentation is very poor and says that I only need to set the use-parent-handlers = "false" parameter, but it does not work.

Additionally, I also changed my org.apache.log4j.Logger code to org.apache.commons.logging.Log from org.apache.commons.logging.LogFactory and got the same result, the log outputs in both files (/ Logs / requests .log or /Logs/alarms.log and server.log).

My links: https://community.jboss.org/message/731527 http://commons.apache.org/logging/guide.html

+4
source share
1 answer

This is a very old thread, but just in case someone is looking for a solution to this problem. There is a typo in the property name that is missing 's'. Here is the property to make it work - use the parent handler ** with ** = false

+6
source

Source: https://habr.com/ru/post/1433682/


All Articles