pattern = r"\s*(INFO|ERROR|WARN|DEBUG) \d+ --- [(.?)] (.?) : [(.?)][(.?)][(.?): (.?)]"给我化成不区分大小写的
时间: 2024-04-12 18:30:10 浏览: 27
要将正则表达式的匹配不区分大小写,可以使用标记`re.IGNORECASE`或`re.I`。以下是将给定的正则表达式转换为不区分大小写的版本:
```python
import re
pattern = r"\s*(INFO|ERROR|WARN|DEBUG) \d+ --- \[(.*?)\] (.*?) : \[(.*?)\]\[(.*?)\]\[(.*?): (.*?)\]"
pattern_ignore_case = re.compile(pattern, re.IGNORECASE)
```
现在,`pattern_ignore_case`是一个不区分大小写的正则表达式对象,你可以将其用于匹配文本时,不论大小写都能够匹配成功。
相关问题
logback-spring.xml 怎么配置日志颜色
您可以通过在 logback-spring.xml 文件中添加以下配置来为日志添加颜色:
```
<configuration>
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
<charset>UTF-8</charset>
</encoder>
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>INFO</level>
</filter>
</appender>
<root level="INFO">
<appender-ref ref="CONSOLE" />
</root>
<springProfile name="dev">
<logger name="com.example" level="DEBUG" />
</springProfile>
<springProfile name="prod">
<logger name="com.example" level="WARN" />
</springProfile>
<springProfile name="test">
<logger name="com.example" level="DEBUG" />
</springProfile>
<springProfile name="!test">
<logger name="org.springframework.web" level="WARN" />
</springProfile>
<!-- 添加以下配置以为日志添加颜色 -->
<conversionRule conversionWord="%clr(%level)"
levelMin="DEBUG" levelMax="INFO"
next="[%thread] %logger{36}.%M - %msg%n"/>
<conversionRule conversionWord="%clr(%level)"
levelMin="WARN" levelMax="ERROR"
next="[%thread] %logger{36}.%M - %msg%n"/>
<conversionRule conversionWord="%clr(%exception)"
levelMin="ERROR" levelMax="ERROR"
next="%n"/>
</configuration>
```
这将为 DEBUG 和 INFO 级别的日志添加颜色。
如果您使用的是 Spring Boot,则您可以在 application.properties 或 application.yml 文件中使用以下属性来配置彩色日志:
```
logging.console.level=info
spring.profiles.active=dev
# 添加以下属性以为日志添加颜色
logging.pattern.level=%clr(%5p)
logging.pattern.file=%d{yyyy-MM-dd HH:mm:ss.SSS} ${LOG_LEVEL_PATTERN:-%5p} [%C:%L] --- [%t] %-40.40logger{39} : %m%n%wex
logging.pattern.console=%d{yyyy-MM-dd HH:mm:ss.SSS} ${LOG_LEVEL_PATTERN:-%5p} [%C:%L] --- [%t] %-40.40logger{39} : %clr(${LOG_EXCEPTION_CONVERSION_WORD:-%5p})%m%n%wex
```
springboot2整合logback-spring.xml
1. 添加logback-spring.xml文件
在src/main/resources目录下创建一个名为logback-spring.xml的文件,将下面的代码复制并粘贴进去。
```
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<!-- 确定打印的日志级别 -->
<timestamp key="byDay" datePattern="yyyyMMdd" />
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{35} -%msg%n</pattern>
</encoder>
</appender>
<!-- 输出到本地文件 -->
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${LOG_PATH}/springboot2.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${LOG_PATH}/springboot2.%d{yyyy-MM-dd}.log</fileNamePattern>
<maxHistory>30</maxHistory>
</rollingPolicy>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{35} -%msg%n</pattern>
</encoder>
</appender>
<!-- root级别日志处理器 -->
<root level="info">
<appender-ref ref="CONSOLE" />
<appender-ref ref="FILE" />
</root>
<!-- 配置包日级别日志处理器 -->
<logger name="com.example" level="debug" additivity="false">
<appender-ref ref="CONSOLE" />
<appender-ref ref="FILE" />
</logger>
</configuration>
```
2. 配置文件参数
在application.properties或application.yml文件中添加以下参数:
- logging.config:指定logback-spring.xml配置文件路径,如果不指定将使用默认的日志配置。
- logging.path:指定日志文件存放路径,必须是一个相对目录。例如:logging.path=log 相当于在项目根目录下创建了一个log文件夹,日志将输出到该文件夹中。如果没有设置该参数,则日志将输出到控制台。
```
#以配置文件的方式加载日志框架,默认使用logback-spring.xml作为配置文件
logging.config=classpath:logback-spring.xml
#指定日志存放的相对路径
logging.path=log
```
3. 在代码中使用日志输出
在需要输出日志的类中使用注入方式加载日志,在方法中使用对应的日志级别输出日志。
```
@Component
public class TestController {
private static final Logger logger = LoggerFactory.getLogger(TestController.class);
@RequestMapping("/test")
public String test() {
logger.debug("这是一条debug日志");
logger.info("这是一条info日志");
logger.warn("这是一条warn日志");
logger.error("这是一条error日志");
return "test";
}
}
```
运行项目,打开控制台或者查看日志文件,可以看到日志已经输出成功。
相关推荐
![application/x-zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![java](https://img-home.csdnimg.cn/images/20210720083646.png)
![ini-development](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)