Return-Path: Delivered-To: apmail-incubator-felix-dev-archive@www.apache.org Received: (qmail 37718 invoked from network); 14 Dec 2006 16:58:04 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 14 Dec 2006 16:58:04 -0000 Received: (qmail 31005 invoked by uid 500); 14 Dec 2006 16:58:11 -0000 Delivered-To: apmail-incubator-felix-dev-archive@incubator.apache.org Received: (qmail 30973 invoked by uid 500); 14 Dec 2006 16:58:11 -0000 Mailing-List: contact felix-dev-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: felix-dev@incubator.apache.org Delivered-To: mailing list felix-dev@incubator.apache.org Received: (qmail 30961 invoked by uid 99); 14 Dec 2006 16:58:11 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 14 Dec 2006 08:58:11 -0800 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received-SPF: neutral (herse.apache.org: local policy) Received: from [207.190.94.33] (HELO gadget.mwt.net) (207.190.94.33) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 14 Dec 2006 08:58:00 -0800 Received: from 192.168.1.8 (dsl-67-41.westby.mwt.net [207.190.67.41]) by gadget.mwt.net (8.13.6/8.12.11) with ESMTP id kBEGvbgf027499 for ; Thu, 14 Dec 2006 10:57:38 -0600 Subject: Framework Logging From: "John E. Conlon" Reply-To: jconlon@verticon.com To: felix-dev@incubator.apache.org Content-Type: text/plain Organization: Verticon, Inc. Date: Thu, 14 Dec 2006 10:57:36 -0600 Message-Id: <1166115456.8586.7.camel@trout> Mime-Version: 1.0 X-Mailer: Evolution 2.0.2 (2.0.2-27.rhel4.6) Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org Have been working with the new Framework Logging functionality and have a few related questions regarding it. 1. Have noticed that the Framework Logger ignores the configuration property felix.log.level when a LogService is detected. Was that the intention? 2. When a LogService is detected the LogService.log( ServiceReference sr, int level, String message, Throwable exception ) is often invoked with a null sr argument. Does the framework ever use non-null sr arguments and if so under what conditions? 3. Many application libraries dynamically import APIs, that might not actually be available, and catch and ignore the exception if classes are not available via the classloader. Libraries that relie on the JavaBeans model do this. Failure to find a class is not considered a bad thing for these libraries. Felix considers failure to load classes an event worthy of a log message at the WARN level. WARNING: *** Class 'java.lang.ObjectBeanInfo' was not found. Bundle 23 does not import package 'java.lang', nor is the package exported by any other bundle or available from the system class loader. *** (java.lang.ClassNotFoundException: *** Class 'java.lang.ObjectBeanInfo' was not found. Bundle 23 does not import package 'java.lang', nor is the package exported by any other bundle or available from the system class loader. ***) In applications using libraries utilizing these techniques the user is often overwhelmed with WARN framework messages which can obscure events that require user attention. This problem is made all the more problematic when Felix uses a LogService that outputs stacktraces for exceptions. Should we downgrade Felix classloading events a lower loglevel? kind regards, John