Google app engine 如何让AppEngine仅为我的应用记录信息级别?

Google app engine 如何让AppEngine仅为我的应用记录信息级别?,google-app-engine,Google App Engine,因此,我尝试根据配置AppEngine日志,确保已将logging.properties文件配置为在web.xml中使用。我已通过以下方式配置logging.properties: .level = WARNING nilsnett.chinese.backend.level = INFO 我的日志包装的包名是nilsnett.chinese.backend。问题是,即使使用此配置,我的应用程序的信息级别日志输出也会被过滤。证据: 我还尝试了以下配置,得到了相同的结果(包括包名称末尾的记录

因此,我尝试根据配置AppEngine日志,确保已将logging.properties文件配置为在web.xml中使用。我已通过以下方式配置logging.properties:

.level = WARNING
nilsnett.chinese.backend.level = INFO 
我的日志包装的包名是
nilsnett.chinese.backend
。问题是,即使使用此配置,我的应用程序的信息级别日志输出也会被过滤。证据:

我还尝试了以下配置,得到了相同的结果(包括包名称末尾的记录器类名):

为了证明logging.properties-file实际上已被读取,并且我确实在这次服务调用中向app engine写入了信息级日志数据,让我向您展示当我设置
.level=info
时会发生什么:

因此,我期望的结果是从我的包中获得信息和更高级别的日志输出,而其他包,如
org.datanucleus
,仅在警告或更严重时显示输出。在上面的例子中,我只想要用紫色星号标记的两行。我做错什么了吗?

将配置更改为:

.level = WARNING

# Set the default logging level for the datanucleus loggers
DataNucleus.JDO.level=WARNING
DataNucleus.Persistence.level=WARNING
DataNucleus.Cache.level=WARNING
DataNucleus.MetaData.level=WARNING
DataNucleus.General.level=WARNING
DataNucleus.Utility.level=WARNING
DataNucleus.Transaction.level=WARNING
DataNucleus.Datastore.level=WARNING
DataNucleus.ClassLoading.level=WARNING
DataNucleus.Plugin.level=WARNING
DataNucleus.ValueGeneration.level=WARNING
DataNucleus.Enhancer.level=WARNING
DataNucleus.SchemaTool.level=WARNING

# FinalizableReferenceQueue tries to spin up a thread and fails.  This
# is inconsequential, so don't scare the user.
com.google.common.base.FinalizableReferenceQueue.level=WARNING
com.google.appengine.repackaged.com.google.common.base.FinalizableReferenceQueue.level=WARNING
这是来自日志配置模板,因此要将datanucleus设置为警告,您必须在该模板中执行类似操作。

然后只需添加您自己的日志记录配置:

nilsnett.chinese.backend.level = INFO 
这将解决此问题

将配置更改为:

.level = WARNING

# Set the default logging level for the datanucleus loggers
DataNucleus.JDO.level=WARNING
DataNucleus.Persistence.level=WARNING
DataNucleus.Cache.level=WARNING
DataNucleus.MetaData.level=WARNING
DataNucleus.General.level=WARNING
DataNucleus.Utility.level=WARNING
DataNucleus.Transaction.level=WARNING
DataNucleus.Datastore.level=WARNING
DataNucleus.ClassLoading.level=WARNING
DataNucleus.Plugin.level=WARNING
DataNucleus.ValueGeneration.level=WARNING
DataNucleus.Enhancer.level=WARNING
DataNucleus.SchemaTool.level=WARNING

# FinalizableReferenceQueue tries to spin up a thread and fails.  This
# is inconsequential, so don't scare the user.
com.google.common.base.FinalizableReferenceQueue.level=WARNING
com.google.appengine.repackaged.com.google.common.base.FinalizableReferenceQueue.level=WARNING
这是来自日志配置模板,因此要将datanucleus设置为警告,您必须在该模板中执行类似操作。

然后只需添加您自己的日志记录配置:

nilsnett.chinese.backend.level = INFO 

这应该可以解决问题

您是否尝试添加记录器:org.level=WARNING?我现在尝试了:结果与带有紫色星星的图像相同。注意:我在配置的上面一行仍然有.level=INFO。你有INFO吗?但在你的问题中,你写了你将其设置为警告?我写了我将其设置为“.level=INFO”在第三个示例(带星星的示例)中,你是否尝试添加记录器:org.level=WARNING?我现在尝试:与带紫色星星的图像的结果相同。注意:我在配置的上面一行仍然有.level=INFO。你有INFO吗?但在你写的问题中,你将其设置为警告?我在第三个示例(带星星的示例)中写道,我将其设置为“.level=INFO”