[ https://issues.apache.org/jira/browse/LOG4J2-229?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13654511#comment-13654511 ]
Gary Gregory commented on LOG4J2-229: ------------------------------------- commit -m "[LOG4J2-229] New JDBC, JPA, and NoSQL database Appenders. Oops, forgot to add new files." (34 paths specified) Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/AbstractDatabaseAppender.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/AbstractDatabaseManager.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/jdbc Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/jdbc/ColumnConfig.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/jdbc/ConnectionSource.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/jdbc/DataSourceConnectionSource.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/jdbc/DriverManagerConnectionSource.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/jdbc/FactoryMethodConnectionSource.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/jdbc/JDBCAppender.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/jdbc/JDBCDatabaseManager.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/jdbc/package-info.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/jpa Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/jpa/JPAAppender.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/jpa/JPADatabaseManager.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/jpa/LogEventWrapperEntity.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/jpa/package-info.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/nosql Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/nosql/NoSQLAppender.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/nosql/NoSQLConnection.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/nosql/NoSQLDatabaseManager.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/nosql/NoSQLObject.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/nosql/NoSQLProvider.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/nosql/couch Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/nosql/couch/CouchDBConnection.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/nosql/couch/CouchDBObject.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/nosql/couch/CouchDBProvider.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/nosql/couch/package-info.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/nosql/mongo Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/nosql/mongo/MongoDBConnection.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/nosql/mongo/MongoDBObject.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/nosql/mongo/MongoDBProvider.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/nosql/mongo/package-info.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/nosql/package-info.java Adding C:/svn/org/apache/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/appender/db/package-info.java Transmitting file data ... Committed revision 1481026 > 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 > 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-unsubscr...@logging.apache.org For additional commands, e-mail: log4j-dev-h...@logging.apache.org