首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在glassfish中运行tinylog

在glassfish中运行tinylog
EN

Stack Overflow用户
提问于 2012-09-08 18:03:02
回答 1查看 248关注 0票数 0

我正在尝试在glassfish 3.1.2.2中运行tinylog。首先,我将tinylog.jar复制到/glassfish3/glassfish/domains/domain1/lib中。其次,我在domain1/config中创建了tinylog.propertiestinylog.properties是这样的:

代码语言:javascript
复制
tinylog.format={date}-[{class}:{method}:{line}]-{level}-{message}
tinylog.writer=rollingfile
tinylog.writer.filename=log.txt
tinylog.writer.backups=5
tinylog.writer.label=count
tinylog.writer.policies=size: 10KB

我的应用程序是一个简单的web服务,如下所示:

代码语言:javascript
复制
@WebService
public class Calculator {
    @WebMethod
    public int sum(int a, int b) {
        Logger.info("new request. a = {0}, b = {1}", a, b);
        return a + b;
    }
}

现在,当我运行web服务时,它会工作并返回结果。但是日志在logs/server.log中是这样的:

代码语言:javascript
复制
[#|2012-09-08T14:15:03.801+0430|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=175;_ThreadName=Thread-2;|2012-09-08 14:15:03 [http-thread-pool-8080(1)] com.argengco.tiny.Calculator.sum()
INFO: new request. a = 43, b = 7
|#]

由于tinylog默认将日志写入标准输出,而glassfish将标准输出重定向到javax.enterprise.system.std.com.sun.enterprise.server.logging记录器,因此tinylog似乎没有找到tinylog.properties。我在server.log中没有看到任何权限错误,这告诉我它不能打开tinylog.properties。有人能帮上忙吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-02-22 23:12:11

如果/glassfish 3/glassfish/domain/domain1是源代码构建树的根目录(即它包含com/blah/blah),那么您需要:

1)将tinylog.properties文件放入该目录

2)调用PropertiesLoader.loadFromFile("config/tinylog.properties");

我是在自己试着找出答案后遇到你的问题的。在使用一些调试消息重新构建源代码之后(有点讽刺!)我算出了答案。

在我的例子中,我有一个src/com/blah/blah目录结构。在这种情况下,tinylog.properties文件需要放在src/目录中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12329778

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档