使用idea通过maven管理工具,完成日志在控制台的输出并将日志信息输出到文件

博主记录刚学会的日志使用方法,主要包括导包和创建配置文件 log4j.properties,完成日志管理。

刚学会关于日志的使用,现在记录下来.

1.导包:

<!--日志包-->
                <!-- https://mvnrepository.com/artifact/commons-logging/commons-logging -->
            <dependency>
                <groupId>commons-logging</groupId>
                <artifactId>commons-logging</artifactId>
                <version>${commons-logging.version}</version>
            </dependency>
                <!-- https://mvnrepository.com/artifact/log4j/log4j -->
            <dependency>
                <groupId>log4j</groupId>
                <artifactId>log4j</artifactId>
                <version>${log4j.version}</version>
            </dependency>
                <!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-log4j12 -->
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-log4j12</artifactId>
                <version>${slf4j-log4j12.version}</version>
            </dependency>

2.创建配置文件log4j.properties

#第一个参数为日志的优先级,分为OFF,FATAL,ERROR,WARN,INFO,DEBUG,ALL或者自定义的级别,但是只建议使用四个级别,从高到低依次是ERROR,WARN,INFO,DEBUG,选择INFO表示看不到DEBUG级别的日志信息;
#后面的参数个数自定义,名称自定义,表示日志的输入位置名称,如下则表示输出到控制台和文件中
log4j.rootLogger=INFO,Console,File
#Log4j提供的appender有以下几种:
# 1.org.apache.log4j.ConsoleAppender(控制台)
# 2.org.apache.log4j.FileAppender(文件)
# 3.org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
# 4.org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸时产生一个新的文件)
# 5.org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的位置)
#定义日志输出目的地为控制台
log4j.appender.Console=org.apache.log4j.ConsoleAppender
# Target的值有System.err;System.out
# 默认情况下是System.out,指定输出到控制台
log4j.appender.Console.Target=System.out
#日志输出在控制台时的编码格式,若包含中文,建议使用gbk(utf-8可能乱码)
log4j.appender.Console.Encoding=gbk
# Log4j提供的layout有以下几种:
# 1.org.apache.log4j.HTMLLayout(以HTML表格形式布局)
# 2.org.apache.log4j.PatternLayout(可以灵活地指定布局模式)
# 3.org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串)
# 4.org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等信息)
#可以灵活地指定日志输出格式,下面一行是指定具体的格式
log4j.appender.Console.layout = org.apache.log4j.PatternLayout
# 设置具体的日志格式
#%m 输出代码中指定的消息
#%p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL
#%r 输出自应用启动到输出该log信息耗费的毫秒数
#%c 输出所属的类目,通常就是所在类的全名
#%t 输出产生该日志事件的线程名
#%n 输出一个回车换行符,Windows平台为“\r\n”,Unix平台为“\n”
#%d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS},输出类似:2019年05月07日 14:10:28,110
#%l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main(TestLog4.java:10)

# 可以在%与模式字符之间加上修饰符来控制其最小宽度、最大宽度、和文本的对齐方式。如:
# 1)%20c:指定输出category的名称,最小的宽度是20,如果category的名称小于20的话,默认的情况下右对齐。
# 2)%-20c:指定输出category的名称,最小的宽度是20,如果category的名称小于20的话,"-"号指定左对齐。
# 3)%.30c:指定输出category的名称,最大的宽度是30,如果category的名称大于30的话,就会将左边多出的字符截掉,但小于30的话也不会有空格。
# 4)%20.30c:如果category的名称小于20就补空格,并且右对齐,如果其名称长于30字符,就从左边较远输出的字符截掉。
log4j.appender.Console.layout.ConversionPattern=[%c] - %m%n

#文件大小到达指定尺寸的时候产生一个新的文件
log4j.appender.File = org.apache.log4j.RollingFileAppender
#指定输出目录,当文件大小到达定义的文件最大尺寸时,将会自动滚动,即将原来的内容移到mylog.txt.1文件
# 若File=logs/mylog.txt,将会在项目的根目录上创建文件夹及文件
log4j.appender.File.File = /../../mylog.txt
# Append 默认是true,即将消息增加到指定文件中,false表示将消息覆盖指定的文件内容
log4j.appender.File.Append=true
#输出到文件的日志的编码格式
log4j.appender.File.Encoding=utf-8
#定义文件最大大小,单位可以是KB,MB,GB
log4j.appender.File.MaxFileSize = 10MB
# 指定日志消息的输出最低层次
# 输出所有日志,如果换成DEBUG表示输出DEBUG以上级别日志
log4j.appender.File.Threshold = ALL
log4j.appender.File.layout = org.apache.log4j.PatternLayout
log4j.appender.File.layout.ConversionPattern =%d{yyyy-MM-dd HH:mm:ss.SSS} - %m%n

至此完成日志的管理

<think>好的,用户的问题是IntelliJ IDEA控制台输出日志颜色变黑色,需要解决这个问题。首先,我需要回忆一下IDEA控制台日志颜色的相关设置。通常日志颜色由日志框架的配置或者IDEA自身的主题设置决定。 可能的原因有几个:一是使用的主题(比如深色主题)导致某些日志级别颜色不明显,看起来像是黑色;二是日志框架没有正确配置颜色输出,比如ANSI转义码没有被正确识别;三是控制台本身的设置被修改,禁用了颜色显示。 接下来,我需要逐步排查这些问题。首先检查IDEA的主题设置,确认控制台的背景色和前景色是否冲突。例如,深色主题下黑色文字可能难以辨认。然后查看是否启用了ANSI颜色输出,这通常在运行配置中设置。此外,检查日志框架如Logback或Log4j的配置,确保它们启用了颜色输出使用了正确的ANSI编码。 还有可能用户最近更新了IDEA或者安装了插件,导致设置被重置或冲突。这时候需要检查插件或者恢复默认设置。另外,某些运行环境(如Gradle或Maven)可能会有自己的颜色配置,需要单独调整。 最后,给出具体的步骤:首先调整IDEA控制台颜色方案,接着检查运行配置中的ANSI启用选项,然后检查日志框架的配置,最后考虑外部因素如插件或运行环境的影响。需要确保每一步都有明确的指导,帮助用户逐一排除问题。</think>### 解决IntelliJ IDEA控制台日志颜色变黑的方法 #### 1. **检查控制台颜色主题** IDEA日志颜色与当前主题相关。若使用深色主题(如Darcula)时黑色文字可能难以辨认,需手动调整: - 进入 `File → Settings → Editor → Color Scheme → Console Colors` - 在 **ANSI Colors** 区域,检查各颜色值是否与背景色冲突 - 修改 `Console → Background` 调整背景色(例如改为深灰而非纯黑) #### 2. **启用ANSI颜色输出** 部分日志框架需显式启用ANSI颜色: - 打开运行配置(Run Configuration) - 在 **VM options** 中添加:`-Dspring.output.ansi.enabled=ALWAYS` - 或对于Maven/Gradle任务,在命令后追加:`--console=plain` → `--console=rich`(Gradle) #### 3. **日志框架配置验证** 以Logback为例,需确保配置包含颜色编码: ```xml <configuration debug="true"> <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>%d{HH:mm:ss.SSS} %highlight(%-5level) [%thread] %cyan(%logger{15}) - %msg%n</pattern> </encoder> </appender> </configuration> ``` 关键点:`%highlight` 和 `%cyan` 等语法需配合ANSI支持[^2]。 #### 4. **IDEA版本兼容性** - 升级到最新版本(2023.1+已优化ANSI渲染) - 检查插件冲突:禁用第三方终端插件(如Rainbow Brackets)后测试 #### 5. **终端环境变量设置** 对于Linux/macOS用户,在 `~/.bashrc` 或 `~/.zshrc` 添加: ```shell export TERM=xterm-256color ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值