hsqldb搞砸了我服务器的日志

时间:2011-05-11 19:06:36

标签: java logging hsqldb

我有一个用Java制作的服务器需要使用数据库,我选择了HSQLDB。

所以我的服务器中有很多条目,如:

Logger.getLogger(getClass().getName()).  severe or info  ("Some important information");

当我运行我的服务器时,它转到System.out,我认为它是java.util.logging?的默认配置,到目前为止它对我来说还不错,后来我会把它转到文件...

但是,问题是,当我启动hsqldb时,它会因默认配置而混乱,我无法再阅读System.out上的日志条目..

我已经尝试更改hsqldb.log_data=false,但它仍然会混淆默认配置。

有人能帮帮我吗? 我不想记录hsqldb事件,只记录我的服务器事件。

由于

3 个答案:

答案 0 :(得分:6)

此问题已在今天发布的最新版本2.2.0中报告并修复。

基本上,您将系统属性hsqldb.reconfig_logging设置为 字符串值false

系统属性通常使用应用程序的Java启动命令中的-D选项进行设置:

java -Dhsqldb.reconfig_logging = false ....

有关更改的详细信息,请参阅下文:

http://sourceforge.net/tracker/?func=detail&aid=3195462&group_id=23316&atid=378131

此外,当您为应用程序使用fremework记录器时,应直接对其进行配置,以选择要接受的日志级别和要忽略的日志级别。

hsqldb.applog设置不会影响框架日志记录,只会控制文件日志。

hsqldb.log_data=false用于关闭内部数据更改日志记录,不应用于普通数据库。 “指南”解释了其用于批量导入的用法。

答案 1 :(得分:1)

尝试将hsqldb.applog设置为0,关闭应用程序日志记录到*.app.log文件。

答案 2 :(得分:0)

使用指向专用属性文件位置的属性启动服务器:

-Djava.util.logging.config.file = /位置/的/你的/ hsqldblog.properties“

其中包含以下行以更改Hsqldb的Java日志记录。

# Change hsqldb logging level 
org.hsqldb.persist = WARNING

旁注,您可以选择以下级别:

严重警告信息配置精细查询