如果App Engine自动记录标准输出,你为什么要使用logging.properties? stderr to INFO&警告?

时间:2009-10-05 01:19:39

标签: java google-app-engine logging java.util.logging

根据Google App Engine for Java的文档:

  

App Engine Java SDK包含一个   模板logging.properties文件,in   appengine-java-sdk / config / user /   目录。要使用它,请将文件复制到   你的WEB-INF / classes目录(或   在WAR的其他地方),然后是系统   property java.util.logging.config.file   至   “WEB-INF /类/ logging.properties”   (或者您选择的路径,   相对于应用程序根目录)。您   可以在中设置系统属性   appengine-web.xml文件,如下所示:

<appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
    ...

    <system-properties>
        <property name="java.util.logging.config.file" value="WEB-INF/classes/logging.properties" />
    </system-properties>

</appengine-web-app>
  

适用于Eclipse的Google插件新功能   项目向导创建这些日志记录   配置文件,和   将它们复制到WEB-INF / classes /   自动。对于java.util.logging,   您必须将系统属性设置为   使用这个文件。

If your write to standard out or standard error, that will automatically get logged as INFO or WARNING.

那么,为什么需要使用logging.properties文件?

这是否可以为您提供对日志记录的额外控制?

1 个答案:

答案 0 :(得分:6)

如果您想使用更具体的日志信息,例如某些DEBUG。

这样,您可以在开发过程中记录更多信息,并且在将代码投入生产时无需更改代码。

个人示例:当我编码时,我记录了很多信息(记录Level FINE和FINEST)。当我将我的应用程序发送给测试人员时,他们使用DEBUG级别。在生产中(对于公共),只有INFO,WARNING和SEVERE是日志。

总之,这可以为您提供更多控制,而且您不必更改任何代码行。

有关登录java的更多信息:here