creating default ERROR-level Root logger with Console appender

发布于 2022-09-11 20:43:45 字数 299 浏览 15 评论 0

问题描述

spring cloud的服务,准备注册到nacos,添加了spring-cloud-starter-alibaba-nacos-discovery依赖,然后启动服务的时候,成功,服务也注册上了,但是最后出现提示:WARN No Root logger was configured, creating default ERROR-level Root logger with Console appender,以至于控制台只打印error日志,info日志不打印,如果不加这个依赖,就是正常的,请问如何解决呢?谢谢了

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

执着的年纪 2022-09-18 20:43:45

解决方案:
在项目启动的时候设置一下属性 System.setProperty("nacos.logging.default.config.enabled","false");

原因的话:
可以看一下 com.alibaba.nacos.client.utils.LogUtils 这个类。内部会根据你的日志框架, 去读取对应日志框架的配置文件, 比如 log4j2 的 log4j2.json, log4j2.xml 等, 然后去重新刷新日志配置, 但是我项目用的是 log4j2, 日志配置文件为 log4j2-spring.xml, 不在读取范围内, 然后取了默认的配置 nacos-client.jar 这个jar包内的 nacos-log4j2.xml 配置。这个文件是没有设置 Root 的, 所以才有上面的提示。

所以想要解决的话:(使用 logback 类似的改法)

  1. 可以像上面一样设置属性为false
  2. 把配置文件改为为正常的 log4j2的文件格式: 如 log4j2.xml
月依秋水 2022-09-18 20:43:45

支持 @LCN29 的答案,修改nacos自定义配置属性为false是最简单的解决方案。

System.setProperty("nacos.logging.default.config.enabled","false");
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文