Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Eclipse控制台不支持';不显示Tomcat异常/堆栈跟踪_Java_Eclipse_Tomcat - Fatal编程技术网

Java Eclipse控制台不支持';不显示Tomcat异常/堆栈跟踪

Java Eclipse控制台不支持';不显示Tomcat异常/堆栈跟踪,java,eclipse,tomcat,Java,Eclipse,Tomcat,当我从Eclipse中启动Tomcat时,我会得到一个控制台,其中包含日志信息,这与我所习惯的非常相似,它们总是以Tomcat在n毫秒内启动的语句结束 但是,每当发生异常时,控制台中不会显示该异常的堆栈跟踪。我习惯于能够从IDE中看到它们“发生” 将logging.properties中的级别设置为不同的值(FINEST或ERROR)会带来预期的更改,但仍然没有任何异常的日志条目 Tomcat是否以不同的方式记录异常 HTTP 500消息提到Tomcat日志。因此,应该有一个地方可以发送更多的信

当我从Eclipse中启动Tomcat时,我会得到一个控制台,其中包含日志信息,这与我所习惯的非常相似,它们总是以Tomcat在n毫秒内启动的语句结束

但是,每当发生异常时,控制台中不会显示该异常的堆栈跟踪。我习惯于能够从IDE中看到它们“发生”

将logging.properties中的级别设置为不同的值(FINEST或ERROR)会带来预期的更改,但仍然没有任何异常的日志条目

Tomcat是否以不同的方式记录异常

HTTP 500消息提到Tomcat日志。因此,应该有一个地方可以发送更多的信息

相应的日志目录只包含简单的访问日志和我在Eclipse控制台上看到的内容

哪个配置负责输出到控制台

我的logging.properties如下所示:

handlers = java.util.logging.ConsoleHandler
java.util.logging.ConsoleHandler.level = FINE
org.apache.catalina.level=FINE
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO    
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = INFO
        static Logger logger = Logger.getLogger(YourClass.class.getName());

        System.setProperty("java.util.logging.SimpleFormatter.format", "%4$s: [%1$tc] %5$s %n");
        //Creating consoleHandler and fileHandler
        consoleHandler = new ConsoleHandler();
        LOGGER.addHandler(consoleHandler);

        //Setting levels to handlers and LOGGER
        consoleHandler.setLevel(Level.ALL);
        consoleHandler.setFormatter(new SimpleFormatter());

        .. When you want to log, do this: 

        LOGGER.log(Level.FINE, "HELLO LOG");

您使用的是哪种日志记录实现?在logging.property中,您正在配置apache日志。要使用纯java日志,请尝试以编程方式进行配置,如下所示:

handlers = java.util.logging.ConsoleHandler
java.util.logging.ConsoleHandler.level = FINE
org.apache.catalina.level=FINE
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO    
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = INFO
        static Logger logger = Logger.getLogger(YourClass.class.getName());

        System.setProperty("java.util.logging.SimpleFormatter.format", "%4$s: [%1$tc] %5$s %n");
        //Creating consoleHandler and fileHandler
        consoleHandler = new ConsoleHandler();
        LOGGER.addHandler(consoleHandler);

        //Setting levels to handlers and LOGGER
        consoleHandler.setLevel(Level.ALL);
        consoleHandler.setFormatter(new SimpleFormatter());

        .. When you want to log, do this: 

        LOGGER.log(Level.FINE, "HELLO LOG");

您应该将
org.apache.catalina.level
设置为
ERROR
,看看会发生什么。从我处理日志的过程中了解到,到目前为止,这只会记录信息级别,而不是错误级别。请尝试添加滚动文件附加程序或类似程序,并查找生成的文件。这是在错误级别。我希望获得Tomcat本身生成的输出,而不是以编程方式记录应用程序中的事件。