在Java GoogleAppEngine开发服务器上显示日志消息(与GWT一起使用)

sam*_*ert 10 java gwt google-app-engine

java.util.logging.Logger用来登录我的Java GoogleAppEngine应用程序.部署应用程序时,这很有效.但是,在开发服务器中运行我的应用程序时,我无法看到我的日志消息.

突出的附加细节:

  • 我在GWT开发模式容器中运行app引擎开发服务器,而不是独立的.
  • 我已经配置了logging.properties,虽然它似乎没有任何区别(它在生产中正常工作,有或没有logging.properties,并且它在使用或不使用logging.properties的开发中不起作用).
  • 如果我在开发服务器上使用System.out.println,则将其输出到运行GWT开发模式容器的终端.显然这是一个可用的解决方法,但我希望登录只能在开发和生产模式下工作.

有没有人在开发模式下进行日志记录(有或没有将AppEngine与GWT开发模式容器一起使用)?我需要看一些神奇的咒语来查看我的日志输出吗?

Bru*_*mmo 2

昨天我遇到了同样的问题,但现在它对我有用。

不确定更改是什么,但我将在下面发布我的配置,以便您可以尝试一下(运行 GAE 1.3.8,没有 GWT,但应该没关系)。

请注意,日志将显示在控制台窗口中(与其他服务器日志记录一起)。我不确定您是否可以将其记录到文件,因为服务器正在某种沙箱中运行。这个配置我只在本地环境测试过,没有上传。

WEB-INF/appengine-web.xml:

   <?xml version="1.0" encoding="utf-8"?>
   <appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
      <!-- (omitted application,version from sample-->
      <system-properties>
        <property name="java.util.logging.config.file" value="WEB-INF/logging.properties"/>
      </system-properties>
   </appengine-web-app>
Run Code Online (Sandbox Code Playgroud)

WEB-INF/logging.properties:

  # Set the default logging level for all loggers to WARNING
  #.level = WARNING
  #.level = ALL
  .level = INFO
Run Code Online (Sandbox Code Playgroud)

日志测试.jsp:

<%@ page contentType="text/html;charset=UTF-8" language="java"%>
<%@ page import=" java.util.logging.Logger"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" lang="sv" xml:lang="sv">
<head>
</head>

<%
Logger logger = Logger.getLogger("org.whatever.Logtest");
logger.info("logtest info");
logger.warning("logtest warning");
logger.severe("logtest severe");


%>

<body>
Check the console for logging
</body>

</html>
Run Code Online (Sandbox Code Playgroud)