如何向Google App Engine添加自定义日志处理程序?

aim*_*ess 5 java google-app-engine java.util.logging

我正在尝试向我的Java应用程序添加自定义日志处理程序.我已经实现了一个扩展java.util.Logging.Handler类的InnerLogger类.在我的logging.properties中声明为处理程序:

handlers:com.mycompany.util.InnerLogger
Run Code Online (Sandbox Code Playgroud)

但是当我启动开发服务器时,我收到以下错误:

Can't load log handler "com.mycompany.util.InnerLogger"
java.lang.ClassNotFoundException: com.mycompany.util.InnerLogger
Run Code Online (Sandbox Code Playgroud)

我可以将自定义处理程序逐个添加到记录器中,但我只是想知道是否有办法将其添加到所有记录器中.

谢谢

Bra*_*rad 3

当我的应用程序初始化时,我能够将 a 添加Handler到根目录Logger。您可以将此代码放入预热任务或 servlet 过滤器中。

private static Logger LOG;

...

LOG = Logger.getLogger("");
LOG.addHandler(myCustomHandler);
Run Code Online (Sandbox Code Playgroud)

它不像使用logging.properties那么优雅,但在GAE上运行时它是一个足够的解决方法。