【问题标题】:GWT.log logs not showing in the GWT Dev Mode consoleGWT.log 日志未显示在 GWT 开发模式控制台中
【发布时间】:2013-07-04 07:09:51
【问题描述】:

我有一个使用 maven 运行的 GWT 应用程序:

mvn gwt:run

但是,没有显示所有 GWT.log 日志可能是什么问题?

【问题讨论】:

  • 可能是日志级别。你试过Log.warn("")Log.error("")吗?
  • @adenoyelle 你能澄清你的评论吗,我正在使用 GWT.log("message");我认为您指的是服务器端日志记录,我需要客户端日志记录
  • 我说的是客户端日志,但是库 gwt-log 允许使用不同的日志级别进行日志记录。我实际上没有看到您正在使用 GWT.log 进行日志记录,抱歉。据我对 GWT.log 的了解,这些日志仅在开发模式下可见。 gwt-log 可能会满足您的需求。看看code.google.com/p/gwt-log
  • @xybrek 你确定你在浏览器中以 DevMode 运行应用程序吗? (已连接浏览器的 DevMode 窗口中的新选项卡)另外,可以肯定的是,您是说 noneGWT.log() 调用出现,或者 not all(即一些)被记录?
  • 您能分享您的 xml 模块文件的日志和处理程序配置吗?通常看起来像这样:gwtproject.org/doc/latest/…

标签: java gwt


【解决方案1】:

为了使日志记录正常工作,您需要具备以下条件:

在您的模块 xml 文件中继承的日志记录模块:

<inherits name="com.google.gwt.logging.Logging" />

记录level 设置和handlers 配置:

<set-property name="gwt.logging.logLevel" value="FINE" />
<set-property name="gwt.logging.systemHandler" value="ENABLED" />
<set-property name="gwt.logging.consoleHandler" value="ENABLED" />
<set-property name="gwt.logging.developmentModeHandler" value="ENABLED" />
<set-property name="gwt.logging.popupHandler" value="DISABLED" />
<set-property name="gwt.logging.firebugHandler" value="DISABLED" />
<set-property name="gwt.logging.simpleRemoteHandler" value="DISABLED" />

根据您要实现的目标,您可能需要与此不同的处理程序配置,有关更多信息,请查看offical doc on that matter

请注意,我设置的级别是 FINE,这将确保您记录的大部分内容不会被任何处理程序忽略,因为 FINE 是最低级别之一。默认情况下,记录器被配置为仅处理 SEVERE 级别的日志,这通常会忽略其余的日志,SEVERE 是最高级别。

接下来,您需要确保您用于记录的级别包含在您在 XML 模块文件中设置的级别中。例如,如果您使用...

static final Logger logger= Logger.getLogger(MyClass.class.getName());
logger.fine("--MESSAGE--");
// or     
logger.log(Level.FINE, "--MESSAGE--");

...对于您在日志中显示的此消息,级别必须设置为 FINE 或低于任何其他级别,如果您选择高于 FINE 的任何级别,所有这些消息都将被忽略。

希望这会有所帮助...

【讨论】:

  • 对于您的 Logger 类,您是否导入 java.util.logging.Logger?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-01-16
  • 1970-01-01
  • 2016-07-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-20
相关资源
最近更新 更多