java中日志怎么记录_Java中记录日志的方式

Logger类:日志处理类

可通过调用某个 getLogger 工厂方法来获得 Logger 对象。这些方法要么创建一个新 Logger,要么返回一个合适的现有 Logger。

日志消息被转发到已注册的 Handler 对象,该对象可以将消息转发到各种目的地,包括控制台、文件、OS 日志等等。

方法摘要:

getLogger(String name):为指定子系统查找或创建一个 logger。

getAnonymousLogger(String resourceBundleName):创建一个匿名的 Logger。

setLevel(Level newLevel):设置日志级别,指定此 logger 记录的消息级别。

addHandler(Handler handler):添加一个日志Handler以接收日志记录消息。

log(Level level, String msg):记录一条不带参数的消息。

loger.log(Level.INFO, “这是一个消息”);

loger.log(Level.WARNING, “这是一个警告”);

loger.log(Level.SEVERE, “这是一个服务器消息”);

log(Level level, String msg, Throwable thrown):记录带有相关的可抛出信息的消息。

info(String msg):记录一条 INFO 消息。

例如:loger.info(“这是一个消息”); 会在日志文件中添加这条信息–>信息: 这是一个消息。同时也会在控制台打印出信息。

fine(String msg):记录一条 FINE 消息。

例如:loger.fine(“这是一个消息3”); 会在日志文件中添加这条信息–>良好: 这是一个消息。但控制台上不会打印出任何信息。

例如:

public static void testLog() throws SecurityException,IOException {

Logger loger =Logger.getLogger("test.Test");

loger.setLevel(Level.ALL);

FileHandler fh = new FileHandler("E:/test.log",true);

loger.addHandler(fh);

SimpleFormatter sf = new SimpleFormatter();

fh.setFormatter(sf);

loger.log(Level.INFO, "这是一个消息");

loger.log(Level.WARNING, "这是一个警告");

loger.log(Level.SEVERE, "这是一个服务器消息");

}

FileHandler类:简单的文件日志记录

构造方法摘要:

FileHandler(String pattern, boolean append):初始化要写入给定文件名的 FileHandler(使用可选的 append)。

配置:默认情况下,每个 FileHandler 都是使用以下 LogManager 配置属性执行初始化的。如果没有定义属性(或者属性具有非法值),则使用指定的默认值。

java.util.logging.FileHandler.level 为 Handler 指定默认的级别(默认为 Level.ALL)。

java.util.logging.FileHandler.filter 指定要使用的 Filter 类的名称(默认为无 Filter)。

java.util.logging.FileHandler.formatter 指定要使用的 Formatter 类的名称(默认为 java.util.logging.XMLFormatter)。

java.util.logging.FileHandler.encoding 指定要使用的字符集编码的名称(默认使用默认的平台编码)。

java.util.logging.FileHandler.limit 指定要写入到任意文件的近似最大量(以字节为单位)。如果该数为 0,则没有限制(默认为无限制)。

java.util.logging.FileHandler.count 指定有多少输出文件参与循环(默认为 1)。

java.util.logging.FileHandler.pattern 为生成的输出文件名称指定一个模式。有关细节请参见以下内容(默认为 “%h/java%u.log”)。

java.util.logging.FileHandler.append 指定是否应该将 FileHandler 追加到任何现有文件上(默认为 false)。

SimpleFormatter类:以可读格式输出日志记录的简单摘要。 方法摘要: format(LogRecord record):格式化给定的LogRecord。 返回String类型。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果你想将 JavaMail 的 debug 日志输出到应用的日志框架,可以按照以下步骤进行: 1. 首先,在你的应用配置一个日志框架,比如 Log4j、Slf4j 等,这里以 Log4j 为例。 2. 在应用引入 JavaMail 相关的包,同时添加以下配置: ```java // 设置 JavaMail 的 debug 模式 Properties props = new Properties(); props.put("mail.debug", "true"); // 获取 Session 对象 Session session = Session.getDefaultInstance(props); // 将 JavaMail 的 Session 对象设置到 Log4j Logger mailLogger = LogManager.getLogger("mail"); mailLogger.addAppender(new JavaMailAppender(session)); ``` 3. 在 Log4j 的配置文件添加以下配置: ```xml <appender name="MAIL" class="org.apache.log4j.net.JMSAppender"> <param name="Threshold" value="DEBUG" /> <param name="InitialContextFactoryName" value="org.apache.activemq.jndi.ActiveMQInitialContextFactory" /> <param name="ProviderURL" value="tcp://localhost:61616" /> <param name="ConnectionFactoryName" value="ConnectionFactory" /> <param name="TopicBindingName" value="topic/mail" /> <param name="UserName" value="admin" /> <param name="Password" value="admin" /> </appender> <logger name="mail"> <level value="DEBUG" /> <appender-ref ref="MAIL" /> </logger> ``` 4. 运行应用,JavaMail 的 debug 日志会自动输出到 Log4j 的邮件日志。 需要注意的是,如果你使用的是其他日志框架,需要将上述配置的 Log4j 相关类和配置替换为对应的类和配置。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值