首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Domino Java Agent中使用Logger

在Domino Java Agent中使用Logger
EN

Stack Overflow用户
提问于 2018-06-08 04:32:17
回答 1查看 842关注 0票数 2

我不想在Java代理中使用字符串缓冲区和System.out.println。

我想使用java.util.Logger。

当我使用

代码语言:javascript
复制
logger.info("logger started")

Domino Server控制台中的输出

代码语言:javascript
复制
[0FDC:000D-1258] 06/07/2018 03:13:57 PM  Agent Manager: Agent  error: Jun 07, 2018 3:13:57 PM TransferDocsToServerNSF NotesMain INFO: logger started.

注意,在使用Level.INFO时,Domino平台在输出之前添加了“代理错误”

然后,我尝试在Level.FINE中使用.logp,但没有显示任何输出。

代码语言:javascript
复制
logger.setLevel(Level.ALL); or logger.setLevel(Level.FINE);
logger.logp(Level.FINE,this.getClass().getSimpleName(),"main","logger started.");

输出:无输出。任何低于Level.INFO的值都不会打印。

如何将Domino日志记录设置为显示Level.FINE?

还有,我该怎么做才能让Domino的信息不认为所有的Level.INFO都是错误的?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-08 06:00:58

在服务器上编辑此文件后,我可以打印不同级别的日志:

(服务器安装) IBM/Domino/jvm/lib/logging.properties

代码语言:javascript
复制
# Default global logging level.
# This specifies which kinds of events are logged across
# all loggers.  For any given facility this global level
# can be overriden by a facility specific level
# Note that the ConsoleHandler also has a separate level
# setting to limit messages printed to the console.
.level= FINEST

# Limit the message that are printed on the console to INFO and above.
java.util.logging.ConsoleHandler.level = FINEST

测试Java代码

代码语言:javascript
复制
logger = Logger.getLogger("com.xpagesbeast");
logger.setUseParentHandlers(false); //do not use the global logger (avoid two outputs per log)

创建自定义处理程序如果不存在,请在此处查看,您可以创建多个JVM将跟踪的处理程序。

代码语言:javascript
复制
if(logger.getHandlers().length == 0){
    System.out.println("Adding a new handler"); 
    consoleHandler = new ConsoleHandler();
    logger.addHandler(consoleHandler);
}               

logger.getHandlers()[0].setLevel(Level.INFO);
logger.severe("test severe logging " + logger.getName());
logger.warning("test warning logging " + logger.getName());
logger.info("test info logging " + logger.getName());
logger.finer("test finer logging " + logger.getName());
logger.finest("test finest logging " + logger.getName());

现在,我可以在数据库或环境变量中设置调试标志,并根据需要指定日志记录级别。

例如,如果我要调试应用程序,可以在应用程序读取的数据库中设置一个值,以确定该处理程序将使用的日志记录级别。

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

https://stackoverflow.com/questions/50749752

复制
相关文章

相似问题

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