2010-11-07 10 views
60

मैं टॉमकैट में डीईबीयूजी को लेवल लॉगिंग सेट करना चाहता हूं लेकिन कंसोल में फिर भी केवल INFO और WARN आउटपुट। क्या कोई मुझे बता सकता है कि क्या गलत है?टॉमकैट में डीईबीयूजी को लेवल लॉगिंग कैसे सेट करें?

मेरे C: \ बिल्ला \ logging.properties:

# Licensed to the Apache Software Foundation (ASF) under one or more 
# contributor license agreements. See the NOTICE file distributed with 
# this work for additional DEBUGrmation regarding copyright ownership. 
# The ASF licenses this file to You under the Apache License, Version 2.0 
# (the "License"); you may not use this file except in compliance with 
# the License. You may obtain a copy of the License at 
# 
#  http://www.apache.org/licenses/LICENSE-2.0 
# 
# Unless required by applicable law or agreed to in writing, software 
# distributed under the License is distributed on an "AS IS" BASIS, 
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
# See the License for the specific language governing permissions and 
# limitations under the License. 

handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler 

.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler 

############################################################ 
# Handler specific properties. 
# Describes specific configuration DEBUG for Handlers. 
############################################################ 

1catalina.org.apache.juli.FileHandler.level = DEBUG 
1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs 
1catalina.org.apache.juli.FileHandler.prefix = catalina. 

2localhost.org.apache.juli.FileHandler.level = DEBUG 
2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs 
2localhost.org.apache.juli.FileHandler.prefix = localhost. 

3manager.org.apache.juli.FileHandler.level = DEBUG 
3manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs 
3manager.org.apache.juli.FileHandler.prefix = manager. 

4host-manager.org.apache.juli.FileHandler.level = DEBUG 
4host-manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs 
4host-manager.org.apache.juli.FileHandler.prefix = host-manager. 

java.util.logging.ConsoleHandler.level = DEBUG 
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter 


############################################################ 
# Facility specific properties. 
# Provides extra control for each logger. 
############################################################ 

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = DEBUG 
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.FileHandler 

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = DEBUG 
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.FileHandler 

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = DEBUG 
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 4host-manager.org.apache.juli.FileHandler 

# For example, set the com.xyz.foo logger to only log SEVERE 
# messages: 
#org.apache.catalina.startup.ContextConfig.level = DEBUG 
#org.apache.catalina.startup.HostConfig.level = DEBUG 
#org.apache.catalina.session.ManagerBase.level = DEBUG 
#org.apache.catalina.core.AprLifecycleListener.level=DEBUG 

मेरी लॉग का उदाहरण:

INFO: Deploying configuration descriptor manager.xml 
08.11.2010 1:06:42 org.apache.catalina.startup.HostConfig deployWAR 
INFO: Deploying web application archive spring-mvc-trial.war 
08.11.2010 1:06:46 org.apache.catalina.startup.HostConfig deployDirectory 
INFO: Deploying web application directory docs 
08.11.2010 1:06:46 org.apache.catalina.startup.HostConfig deployDirectory 
INFO: Deploying web application directory examples 
08.11.2010 1:06:46 org.apache.catalina.startup.HostConfig deployDirectory 
INFO: Deploying web application directory ROOT 
08.11.2010 1:06:46 org.apache.coyote.http11.Http11AprProtocol start 
INFO: Starting Coyote HTTP/1.1 on http-8080 
08.11.2010 1:06:46 org.apache.coyote.ajp.AjpAprProtocol start 
INFO: Starting Coyote AJP/1.3 on ajp-8009 
08.11.2010 1:06:46 org.apache.catalina.startup.Catalina start 
INFO: Server startup in 3777 ms 
08.11.2010 1:09:36 org.apache.coyote.http11.Http11AprProtocol pause 
INFO: Pausing Coyote HTTP/1.1 on http-8080 
08.11.2010 1:09:36 org.apache.coyote.ajp.AjpAprProtocol pause 
INFO: Pausing Coyote AJP/1.3 on ajp-8009 
08.11.2010 1:09:37 org.apache.catalina.core.StandardService stop 
INFO: Stopping service Catalina 
08.11.2010 1:09:37 org.apache.catalina.loader.WebappClassLoader clearReferencesJdbc 
SEVERE: The web application [/spring-mvc-trial] registered the JBDC driver [com.mysql.jdbc.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered. 
08.11.2010 1:09:37 org.apache.catalina.loader.WebappClassLoader clearReferencesThreads 
SEVERE: The web application [/spring-mvc-trial] appears to have started a thread named [MySQL Statement Cancellation Timer] but has failed to stop it. This is very likely to create a memory leak. 
08.11.2010 1:09:38 org.apache.coyote.http11.Http11AprProtocol destroy 
INFO: Stopping Coyote HTTP/1.1 on http-8080 
08.11.2010 1:09:38 org.apache.coyote.ajp.AjpAprProtocol destroy 
INFO: Stopping Coyote AJP/1.3 on ajp-8009 
+0

बिलाव 8 के लिए देखें: [बिलाव 8 डिबग लॉगिंग सक्षम अनइडेड जार की सूची] [http://stackoverflow.com/q/24821865/55075) – kenorb

उत्तर

57

सबसे पहले, उपयोग करने के लिए स्तर नाम FINE, नहीं DEBUG है। के, एक मिनट कि DEBUG वास्तव में वैध है के लिए मान के रूप में यह निम्नलिखित विवरण में थोड़ा और अधिक समझ बनाने के लिए बनाता है करते हैं ...

Handler specific properties अनुभाग में, आप DEBUG करने के लिए उन संचालकों के लिए लॉगिंग स्तर स्थापित कर रहे हैं। इसका मतलब है कि हैंडलर DEBUG स्तर या उच्चतम के साथ किसी भी लॉग संदेश को संभालेगा। इसका मतलब यह नहीं है कि DEBUG संदेश वास्तव में हैंडलर को पास हो रहे हैं।

Facility specific properties अनुभाग में, आप कुछ स्पष्ट रूप से नामित लॉगर्स के लिए लॉगिंग स्तर DEBUG पर सेट कर रहे हैं। उन लॉगर्स के लिए, स्तर DEBUG या ऊपर पर कुछ भी हैंडलर को पास हो जाएगा।

डिफ़ॉल्ट लॉगिंग स्तर INFO है, और Facility specific properties अनुभाग में उल्लिखित लॉगर्स के अलावा, सभी लॉगर्स के पास वह स्तर होगा।

आप सभी FINE संदेश देखने के लिए चाहते हैं, तो इस जोड़ें:

.level = FINE 

हालांकि, इस लॉग संदेशों की एक विशाल मात्रा उत्पन्न होगा। यह शायद अपने कोड के लिए लॉगिंग स्तर सेट करने के लिए और अधिक उपयोगी है:

your.package.level = FINE 

अधिक जानकारी के लिए Tomcat 6/Tomcat 7 प्रवेश दस्तावेज़ देखें। उदाहरण logging.properties वहाँ से पता चला फ़ाइल FINE बजाय DEBUG उपयोग करता है:

... 
1catalina.org.apache.juli.FileHandler.level = FINE 
... 

और आपको अतिरिक्त लॉगिंग स्तर को स्थापित करने का उदाहरण देता है:

# For example, set the com.xyz.foo logger to only log SEVERE 
# messages: 
#org.apache.catalina.startup.ContextConfig.level = FINE 
#org.apache.catalina.startup.HostConfig.level = FINE 
#org.apache.catalina.session.ManagerBase.level = FINE 
+0

यह काम करता है! बहुत बहुत धन्यवाद, रिचर्ड !!! – gennad

संबंधित मुद्दे