Return-Path: Delivered-To: apmail-openjpa-dev-archive@www.apache.org Received: (qmail 22881 invoked from network); 9 Mar 2010 17:14:21 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 9 Mar 2010 17:14:21 -0000 Received: (qmail 48994 invoked by uid 500); 9 Mar 2010 17:13:54 -0000 Delivered-To: apmail-openjpa-dev-archive@openjpa.apache.org Received: (qmail 48938 invoked by uid 500); 9 Mar 2010 17:13:54 -0000 Mailing-List: contact dev-help@openjpa.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@openjpa.apache.org Delivered-To: mailing list dev@openjpa.apache.org Received: (qmail 48930 invoked by uid 99); 9 Mar 2010 17:13:54 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 09 Mar 2010 17:13:54 +0000 X-ASF-Spam-Status: No, hits=-2.3 required=10.0 tests=RCVD_IN_DNSWL_MED,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: local policy) Received: from [192.18.43.133] (HELO sca-es-mail-2.sun.com) (192.18.43.133) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 09 Mar 2010 17:13:44 +0000 Received: from fe-sfbay-09.sun.com ([192.18.43.129]) by sca-es-mail-2.sun.com (8.13.7+Sun/8.12.9) with ESMTP id o29HDMtc026318 for ; Tue, 9 Mar 2010 09:13:22 -0800 (PST) MIME-version: 1.0 Content-transfer-encoding: 7BIT Content-type: text/plain; CHARSET=US-ASCII; delsp=yes; format=flowed Received: from conversion-daemon.fe-sfbay-09.sun.com by fe-sfbay-09.sun.com (Sun Java(tm) System Messaging Server 7u2-7.04 64bit (built Jul 2 2009)) id <0KZ000K00Y7VO300@fe-sfbay-09.sun.com> for dev@openjpa.apache.org; Tue, 09 Mar 2010 09:13:22 -0800 (PST) Received: from dhcp-umpk15-120-21.SFBay.Sun.COM ([unknown] [129.146.120.21]) by fe-sfbay-09.sun.com (Sun Java(tm) System Messaging Server 7u2-7.04 64bit (built Jul 2 2009)) with ESMTPSA id <0KZ000GOHYI0D0E0@fe-sfbay-09.sun.com> for dev@openjpa.apache.org; Tue, 09 Mar 2010 09:13:12 -0800 (PST) Date: Tue, 09 Mar 2010 09:13:09 -0800 From: Craig L Russell Subject: Re: Logging settings In-reply-to: <4B9656FE.3000304@apache.org> Sender: Craig.Russell@Sun.COM To: dev@openjpa.apache.org Message-id: <100E615C-4AC9-4C8A-9D59-973B7BA2D414@SUN.com> X-Mailer: Apple Mail (2.936) References: <6EBFCD28-A3BE-434B-BA04-26FC1A1CFD2B@SUN.com> <89c0c52c1003081425i17af2d08s8bde28193b984c50@mail.gmail.com> <3112267E-0B24-4F48-849D-78093D2E1413@SUN.com> <4B9656FE.3000304@apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Hi Donald, On Mar 9, 2010, at 6:11 AM, Donald Woods wrote: > Are these junit 3.x tests? Running under surefire? Yes. > > I run the standard junits as part of trunk builds all the time and > turn > off most of the logging (as I get tired of seeing all those > enhancement > warnings too), by using cmdline options - > > mvn clean install -Dopenjpa.loglevel=ERROR This does actually affect the enhancer but it doesn't affect the test runs. > > The above definitely turns off everything but ERROR messages. > But, our pom.xml has special setups in them, like providing a > default of - > INFO > > and then passing them to surefire as - > > org.apache.maven.plugins > maven-surefire-plugin > > ${surefire.jvm.args} > > > openjpa.Log > DefaultLevel=${openjpa.loglevel This is what kills the properties set on the command line. When I change the above line to: DefaultLevel=${openjpa.loglevel},$ {openjpa.Log} all of the command line parameters take effect, and they are processed *after* the default level is processed. I'll propose a patch for this, since as it is now, command line levels are disabled when running under surefire. I'm going to see if this also allows the customization in persistence.xml also, but for my purposes the command line is all I need. Thanks for the analysis. Craig > > . . . > > The enhancer.xml ANT script gets "openjpa.loglevel" passed in and then > it remaps it to the expected settings as above. > > A couple months back we had a Geronimo user asking about OpenJPA > logging > and they were able to configure custom loglevel and Log file output in > their persistence.xml using the 1.2.1 level without problems, so it > should be doable..... > > > -Donald > > > On 3/9/10 1:21 AM, Craig L Russell wrote: >> Hi Kevin, >> >> I did a little more experimentation. There are two persistence >> units in >> the persistence.xml: xml-persistence-unit and test. >> >> I can override the settings of the xml-persistence-unit on the >> command >> line. >> >> So the settings for File, DefaultLevel, Tool, Enhance, MetaData are >> all >> getting set properly for enhancement. >> >> But the log settings I put into the persistence unit test are not >> taking >> effect properly. To verify that I'm using the right persistence >> unit, I >> deliberately caused an error and the error was reported. >> >> But even with setting openjpa.Log in the persistence unit, I still >> get >> console logging: >> >> Running org.apache.openjpa.persistence.identity.TestSQLBigIntegerId >> TestSQLBigIntegerId 1268089380000 >> 543 test INFO [main] openjpa.Runtime - Starting OpenJPA 1.3.0- >> SNAPSHOT >> 5763 test INFO [main] openjpa.jdbc.JDBC - Using dictionary class >> "org.apache.openjpa.jdbc.sql.MySQLDictionary" (MySQL >> 5.1.41-ndb-7.1.2-beta-debug ,MySQL-AB JDBC Driver >> mysql-connector-java-5.1.12 ( Revision: ${bzr.revision-id} )). >> Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: >> 10.698 sec >> >> I modified a test case to put the logging information into the setup >> string and this changed the behavior of the logger. >> >> public void setUp() { >> setUp(SQLBigIntegerIdEntity.class >> , "openjpa.Log", >> "File=openjpaLogger.log,DefaultLevel=INFO,SQL=TRACE,JDBC=TRACE" >> ); >> } >> >> Any ideas why adding properties to the command line or >> persistence.xml >> doesn't take effect for tests, but adding the properties to setup >> does >> work? >> >> Thanks, >> >> Craig >> >> On Mar 8, 2010, at 2:25 PM, Kevin Sutter wrote: >> >>> Hi Craig, >>> We have found exceptions to the rules, but the order of property >>> configuration is documented in this section [1] of the manual. >>> Based on >>> what you have provided, my guess is that some of your >>> persistence.xml >>> file(s) are overriding the system properties you are trying to set. >>> >>> I don't personally use the system properties, but I would guess you >>> need to >>> enclose the values in quotes. So, I would try that for setting the >>> openjpa.Log property. >>> >>> Good luck! >>> Kevin >>> >>> [1] >>> http://openjpa.apache.org/builds/latest/docs/manual/manual.html#ref_guide_conf_specify >>> >>> >>> On Mon, Mar 8, 2010 at 2:24 PM, Craig L Russell >>> wrote: >>> >>>> Hi, >>>> >>>> I'm trying to do a few simple things with logging, and having >>>> trouble. >>>> >>>> 1. Disable WARN messages from the enhancer. >>>> >>>> 2. Get SQL TRACE messages. >>>> >>>> I've tried unsuccessfully to get either of these to work. I'm >>>> using the >>>> standard OpenJPA logging, and get a few hundred messages out of the >>>> enhancer, so I know logging is basically working. >>>> >>>> Reading everything I can about the logging system, I tried to get >>>> the >>>> enhancer to stop logging WARN but only log ERROR: >>>> >>>> -Dopenjpa.Log=none >>>> >>>> I still get WARN messages; don't get any errors from the logging >>>> system; it >>>> looks like the enhancer is just ignoring this setting >>>> >>>> -Dopenjpa.Log=SQL=TRACE,File=openjpaLogger.log >>>> >>>> I get output sent to openjpaLogger.log file as expected, but >>>> nothing of >>>> interest. Just: >>>> >>>> 11 TRACE [main] openjpa.Runtime - Default configuration >>>> information >>>> couldn't be loaded from any configuration provider.0 TRACE [main] >>>> openjpa.Runtime - Default configuration information couldn't be >>>> loaded from >>>> any configuration provider. >>>> 17 WARN [main] openjpa.Runtime - The configuration property >>>> named >>>> "openjpa.LogLevel" was not recognized and will be ignored, although >>>> the name >>>> closely matches a valid property called "openjpa.Log". >>>> 17 TRACE [main] openjpa.Runtime - Default configuration >>>> information >>>> couldn't be loaded from any configuration provider. >>>> 2 WARN [main] openjpa.Runtime - The configuration property named >>>> "openjpa.LogLevel" was not recognized and will be ignored, although >>>> the name >>>> closely matches a valid property called "openjpa.Log". >>>> 2 TRACE [main] openjpa.Runtime - Default configuration >>>> information >>>> couldn't be loaded from any configuration provider. >>>> 10 TRACE [main] openjpa.Runtime - Default configuration >>>> information >>>> couldn't be loaded from any configuration provider. >>>> >>>> And where did it get the LogLevel? I didn't set this property! >>>> >>>> Can anyone point me in the right direction? Is the -Dopenjpa.Log >>>> useful for >>>> anything or do I have to use persistence.xml properties (I >>>> haven't tried >>>> this since there are hundreds of persistence.xml files that I would >>>> need to >>>> fiddle). >>>> >>>> Thanks, >>>> >>>> Craig >>>> >>>> Craig L Russell >>>> Architect, Sun Java Enterprise System http://db.apache.org/jdo >>>> 408 276-5638 mailto:Craig.Russell@sun.com >>>> P.S. A good JDO? O, Gasp! >>>> >>>> >> >> Craig L Russell >> Architect, Sun Java Enterprise System http://db.apache.org/jdo >> 408 276-5638 mailto:Craig.Russell@sun.com >> P.S. A good JDO? O, Gasp! >> >> Craig L Russell Architect, Sun Java Enterprise System http://db.apache.org/jdo 408 276-5638 mailto:Craig.Russell@sun.com P.S. A good JDO? O, Gasp!