logging-log4j-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nick Williams (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (LOG4J2-229) New JDBC, JPA, and NoSQL database Appenders
Date Mon, 08 Jul 2013 01:53:48 GMT

    [ https://issues.apache.org/jira/browse/LOG4J2-229?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13701732#comment-13701732

Nick Williams commented on LOG4J2-229:

Okay, I committed r1500562. If the problem was what I think it was, that should fix it. Tests
still pass on my machine like they always have.

Darn line endings. Why does Microsoft always refuse to follow a standard?
> New JDBC, JPA, and NoSQL database Appenders
> -------------------------------------------
>                 Key: LOG4J2-229
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-229
>             Project: Log4j 2
>          Issue Type: New Feature
>          Components: Appenders, Core
>    Affects Versions: 2.0-beta5
>            Reporter: Nick Williams
>            Assignee: Nick Williams
>             Fix For: 2.0-beta8
>         Attachments: db-appenders-r1479389.patch
>   Original Estimate: 168h
>  Remaining Estimate: 168h
> As discussed on the mailing list ([1] and [2]), Log4j 2 is in need of some database appenders.
I have added this new feature and will attach a patch shortly. The patch contains:
> - A slight change to PatternLayout. Currently it is not possible to create a PatternLayout
that doesn't always handle exceptions. If you leave all exception handling out of the pattern,
an exception handler is forcibly added to the end of the pattern. This behavior is controlled
by a flag, but that flag is always hard-coded to false. I added a parameter for it. This was
necessary for the JDBC appender.
> - o.a.l.l.core.appender.db.AbstractDatabaseManager and AbstractDatabaseAppender, together
in concert, take care of some core functionality common across all database appenders, such
as buffering and connection state.
> - o.a.l.l.core.appender.db.jdbc.JDBCAppender (and Manager, other classes) supports writing
events to a relational database using raw JDBC. It's injection-safe due to the use of prepared
statements. It can be configured with URL/username/password, JNDI data source, or a connection
factory method.
> - o.a.l.l.core.appender.db.jpa.JPAAppender (and Manager, other classes) supports writing
events to a relational database using the Java Persistence API version 2.0.
> - o.a.l.l.core.appender.db.nosql.NoSQLAppender (and Manager, other classes) supports
writing to an abstract concept of a NoSQL provider. Providers have been created for MongoDB
and Apache CouchDB. Creating a new provider is extremely easy.
> - Thorough unit tests for the abstract classes, the JDBC and JPA appenders, and the abstract
parts of the NoSQLAppender. Directly unit testing the MongoDB and CouchDB providers in a platform-independent
way is not easy and may not be possible.
> - Thorough documentation (both JavaDoc and Site documentation) for all of the appenders.
> [1] http://markmail.org/thread/z2wpmwelv7p6xh2o
> [2] http://markmail.org/thread/s7pljqdjhjz5xfk5

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: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org

View raw message