[
https://issues.apache.org/jira/browse/LOG4J2-291?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13691216#comment-13691216
]
Thomas Neidhart commented on LOG4J2-291:
----------------------------------------
The same bug is actually present in the JPAAppender and the NoSQLAppender.
> Failover appender doesn't fail over on JDBC appender error
> ----------------------------------------------------------
>
> Key: LOG4J2-291
> URL: https://issues.apache.org/jira/browse/LOG4J2-291
> Project: Log4j 2
> Issue Type: Bug
> Components: Appenders
> Affects Versions: 2.0-beta7
> Environment: Java version 1.6_045 and Oracle 11g 11.2.0.3.0 database
> on 64-bit machine. It's running within eclipse but I don't think that should
> make a difference.
> Reporter: Asaf Erlich
> Priority: Minor
>
> When I configure a Failover appender using the jdbc appender as primary and
> console/file as secondary if I get a database error It prints something to
> System.err, but not to the file/console as expected.
> How to recreate:
> Make sure a jdbc appender works first.
> Prepare a configuration similar to the one below:
> <?xml version="1.0" encoding="UTF-8"?>
> <configuration status="WARN">
> <appenders>
> <Jdbc name="HubManagerDatabaseLog" tablename="HUB_MANAGER_LOG">
> <ConnectionFactory
> class="com.somecompany.server.dal.DalCommon"
> method="getDatabaseInstanceConnection"/>
> <Column name="LOG_DATE" isEventTimestamp="true" />
> <Column name="LOG_THREAD" pattern="%thread" />
> <Column name="LOG_LEVEL" pattern="%level" />
> <Column name="LOG_CLASS" pattern="%logger" />
> <Column name="LOG_METHOD" pattern="%method" />
> <Column name="LOG_MESSAGE" pattern="%message" />
> <Column name="LOG_EXCEPTION" pattern="%exception" />
> </Jdbc>
> <FastRollingFile name="HubManagerFileLog"
> filename="logs/HubManager.log" filePattern="logs/HubManager-%d{COMPACT}.log">
> <PatternLayout pattern="%d [%thread] %-5level
> %logger.%method - %message %exception%n" />
> <Policies>
> <SizeBasedTriggeringPolicy size="5MB"/>
> </Policies>
> <!-- <DefaultRolloverStrategy max="50"/> -->
> </FastRollingFile>
> <Console name="Console" target="SYSTEM_OUT">
> <PatternLayout pattern="%d [%thread] %-5level
> %logger.%method - %message %exception%n" />
> </Console>
> <Failover name="PrimaryDatabaseLoggingIfFailGoToFile"
> primary="HubManagerDatabaseLog" suppressExceptions="false">
> <Failovers>
> <appender-ref ref="HubManagerFileLog"/>
> </Failovers>
> </Failover>
> </appenders>
>
> <loggers>
> <logger name="com.exzac" level="DEBUG">
> <appender-ref
> ref="PrimaryDatabaseLoggingIfFailGoToFile"/>
> <appender-ref ref="Console"/>
> </logger>
> <root level="DEBUG">
> </root>
> </loggers>
> </configuration>
> Run the following in a test java class that correctly has the above xml
> configuration on the build path:
> import org.apache.logging.log4j.LogManager;
> import org.apache.logging.log4j.Logger;
> public class TestFailOverAppender {
> private static final Logger LOGGER =
> LogManager.getLogger(TestFailOverAppender.class);
> public static void main(final String[] args) {
> final String shortString = "FailOver Short message that should
> go to database";
> LOGGER.info(shortString);
> final StringBuilder longString = new StringBuilder(shortString);
> while (longString.length() < 4000) {
> longString.append(shortString);
> }
> LOGGER.info(longString.toString());
> LOGGER.info("FailOver short string after message");
> }
> }
> I have tried setting suppressExceptions as false/true. I have tried
> replacing the fileappender (which works normally) with just console instead
> and saw the same result. This may or may not be related to another JIRA
> issue I found, LOG4J2-126.
> If there is simply something wrong with my configuration please let me know.
> I tried following the documentation as much as possible. Thank you.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]