如何使用log.info打印日志

这篇博客介绍了Java中使用Log记录日志的方式,首先展示了传统的方式,通过Logger.getLogger获取日志实例,然后在方法中调用info级别记录日志。接着,博主推荐了Slf4j并提供了配置依赖的步骤,以及如何简洁地在类中使用@Slf4j注解实现日志打印。这种方式更方便,可以减少代码冗余。
该文章已生成可运行项目,

 博客一

Java中使用Log的方法 - renxiaoren - 博客园 (cnblogs.com)

方式一:

public class HelloLogWorld {  
   private static String name = HelloLogWorld.class.getName();      
   private static Logger log = Logger.getLogger(name);// <= (2)  
   public void sub() {  
     log.info("Hello Logging World");    // <= (3)  
   }  
   public static void main(String[] args) {  
     HelloLogWorld logWorld = new HelloLogWorld();  
     logWorld.sub();  
   }  
 }

 Logger logger=Logger.getLogger(ECntrCbsChargingService.class); logger.info("success");

博客二(亲测更方便更好用)

使用@Slf4j打印日志_zcyt085的博客-优快云博客

添加依赖:

 		<dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.0</version>
        </dependency>

        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.7.25</version>
        </dependency>

        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
            <version>1.2.3</version>
        </dependency>

使用示例:


```java
package zc.test;

import lombok.extern.slf4j.Slf4j;

@Slf4j
public class LogDemo {
    public static void main(String[] args) {
        log.info("message");
        log.error("error");
        log.warn("warning");
    }
}

本文章已经生成可运行项目
### 引入日志框架并使用 `log.info` 打印日志 在项目中引入日志框架(如 Log4j、Logback、Log4Qt 等)可以显著提高调试效率和系统监控能力。以下以 **Log4j2** 和 **Log4Qt** 为例,介绍如何在 Java 和 Qt 项目中引入日志框架,并使用 `log.info` 或等效方式输出日志信息。 #### Java 项目中使用 Log4j2 Log4j2 是 Apache 提供的一个高性能日志框架,广泛用于 Java 项目中,特别是在 Spring Boot 和 Spring Cloud 项目中。 ##### 1. 添加依赖 在 `pom.xml` 文件中添加 Log4j2 的依赖: ```xml <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>2.17.1</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <version>2.17.1</version> </dependency> ``` ##### 2. 配置 Log4j2 在 `src/main/resources` 目录下创建 `log4j2.xml` 配置文件: ```xml <?xml version="1.0" encoding="UTF-8"?> <Configuration status="WARN"> <Appenders> <Console name="Console" target="SYSTEM_OUT"> <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/> </Console> </Appenders> <Loggers> <Root level="info"> <AppenderRef ref="Console"/> </Root> </Loggers> </Configuration> ``` ##### 3. 在代码中使用 `log.info` 在 Java 类中,使用 `org.apache.logging.log4j.LogManager` 获取 `Logger` 实例,并调用 `info` 方法输出日志信息: ```java import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; public class ExampleClass { private static final Logger log = LogManager.getLogger(ExampleClass.class); public void doSomething() { log.info("This is an info message."); } } ``` #### Qt 项目中使用 Log4Qt Log4Qt 是 Log4j 的 Qt 移植版本,专为 Qt 应用程序设计,提供了丰富的日志功能。 ##### 1. 下载并集成 Log4Qt 可以从 GitHub 或其他源获取 Log4Qt 的源码,并将其添加到项目中。通常,Log4Qt 提供了一个 `.pro` 文件,可以直接集成到 Qt 项目中。 ##### 2. 配置 Log4Qt 在项目的主文件(如 `main.cpp`)中初始化 Log4Qt: ```cpp #include <QCoreApplication> #include "log4qt/logger.h" #include "log4qt/consoleappender.h" #include "log4qt/simplelayout.h" int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); // 创建日志布局 Log4Qt::SimpleLayout *layout = new Log4Qt::SimpleLayout(); layout->activateOptions(); // 创建控制台 Appender Log4Qt::ConsoleAppender *appender = new Log4Qt::ConsoleAppender(layout, Log4Qt::ConsoleAppender::STDOUT_TARGET); appender->setName("ConsoleAppender"); appender->activateOptions(); // 获取根日志器并设置 Appender 和日志级别 Log4Qt::Logger *rootLogger = Log4Qt::Logger::rootLogger(); rootLogger->addAppender(appender); rootLogger->setLevel(Log4Qt::Level::INFO_INT); // 获取特定类的日志Log4Qt::Logger *logger = Log4Qt::Logger::logger("ExampleClass"); // 输出日志信息 logger->info("This is an info message."); return a.exec(); } ``` ##### 3. 使用 `info` 方法输出日志 在 Qt 类中,可以通过 `Log4Qt::Logger::logger("ClassName")` 获取日志器实例,并调用 `info` 方法输出日志: ```cpp #include "log4qt/logger.h" class ExampleClass { public: ExampleClass() { logger = Log4Qt::Logger::logger("ExampleClass"); } void doSomething() { logger->info("This is an info message from ExampleClass."); } private: Log4Qt::Logger *logger; }; ``` #### Python 项目中使用 logging 模块 如果你使用的是 Python,Python 标准库中的 `logging` 模块提供了类似的功能。 ##### 1. 配置 logging 模块 ```python import logging # 配置日志记录 logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', handlers=[logging.StreamHandler()]) # 获取日志记录器 logger = logging.getLogger(__name__) ``` ##### 2. 使用 `logger.info` 输出日志 ```python def do_something(): logger.info("This is an info message.") do_something() ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值