1

我想删除在代码运行时生成的日志。

例如,我在 voip/asterisk 中使用 asterisk-java,我总是收到以下消息

Jul 30, 2012 10:55:17 AM org.asteriskjava.manager.internal.ManagerConnectionImpl connect
INFO: Connecting to 192.168.0.27:5038
Jul 30, 2012 10:55:18 AM org.asteriskjava.manager.internal.ManagerConnectionImpl setProtocolIdentifier
INFO: Connected via Asterisk Call Manager/1.1
Jul 30, 2012 10:55:18 AM org.asteriskjava.manager.internal.ManagerConnectionImpl setProtocolIdentifier
WARNING: Unsupported protocol version 'Asterisk Call Manager/1.1'. Use at your own risk.
Jul 30, 2012 10:55:18 AM org.asteriskjava.manager.internal.ManagerConnectionImpl doLogin
INFO: Successfully logged in
Jul 30, 2012 10:55:22 AM org.asteriskjava.manager.internal.ManagerConnectionImpl doLogin
INFO: Determined Asterisk version: Asterisk 1.0

是否有任何配置设置或其他方式来删除日志并防止它在我的代码执行运行时生成。

谢谢

4

6 回答 6

3

默认情况下,Asterisk-Java 使用 java.util 日志记录,因此您可以查看 JDK 文档以了解如何配置它。

此链接可能会对您有所帮助。

如何禁用 asterisk-java 的调试或“INFO”输出?

于 2012-07-30T05:52:03.690 回答
2

您不能简单地按名称/包更改日志级别吗?

Logger.getLogger(org.asteriskjava.manager.internal.ManagerConnectionImpl.class).setLevel(Level.OFF);
于 2012-07-30T05:49:48.677 回答
1

你没有告诉你是使用 log4j 还是 jdk 日志 谷歌搜索如何禁用星号 java 中的日志给出了这个 http://www.asterisk-java.org/development/faq.html

于 2012-07-30T05:58:08.910 回答
0

你在使用类似 log4j 的东西吗???

我不确定你的要求是什么。但是,如果您不想在运行时查看任何日志,则将所有日志写入 INFO 或 DEBUG 级别,然后在 log4jProperties 中将 logLevel 更改为 ERROR 或 FATAL。

但只需了解日志的目的是在运行时查看它们。

于 2012-07-30T05:43:19.320 回答
0

如果您只是想抑制应用程序的输出,您可以这样做

System.setOut(new PrintStream("stdout.log"));
System.setErr(new PrintStream("stderr.log"));

(或者创建你自己的PrintStream子类,它只是抑制所有输出。)

于 2012-07-30T05:43:32.237 回答
0

在 srikanth yaradla 先生的帮助下,这个问题得到了解决。我需要在 logging.properties 文件中进行更改。我之前没有这样做。

于 2012-07-30T07:22:54.073 回答