当前位置: 首页 > 知识库问答 >
问题:

了解Spring Boot2的默认日志配置

束向荣
2023-03-14

但是,在日志配置的xml文件中,冒号后面总是有一个破折号。这是为什么?例如:

2.不断变化的财产名称

特别是,此属性在application.properties(或.yml)中没有等价属性来配置它

${log_file_total_size_cap:-0}

如果要将该属性更改为其他值,则必须设置LOG_FILE_TOTAL_SIZE_CAP属性。我如何在仍然使用spring Boot提供的原始默认登录配置xml的同时做到这一点呢?

而application.properties不允许对此进行更改。虽然我必须承认这是一个非常有用的缺省,但它有时并不起作用。为了对追加器或策略进行一个小调整而必须完全覆盖整个logback xml配置,这似乎有些矫枉过正。如果我要在类路径上提供多个自定义logback/XML配置文件,那么logback会“合并”它们吗,还是简单地选择一个并忽略其他的?覆盖/合并是如何工作的,哪一个xml“胜出”?

共有1个答案

宦瀚
2023-03-14

1.神秘的破折号

对于日志:https://logback.qos.ch/manual/configuration.html。具体地说:

在某些情况下,如果变量未声明或其值为null,则可能希望该变量具有默认值。与Bash shell一样,可以使用“:-”运算符指定默认值。例如,假设没有定义名为aName的变量,“${aName:-golden}”将被解释为“golden”。

 类似资料:
  • Spring boot附带了几个默认的日志框架配置,包括Log4j2。虽然Spring boot参考手册中有关于日志记录的详细文档,但它没有提到默认日志模式的具体配置方式和位置,这使得重写此模式变得很困难。 问题是Spring Boot在哪里为Log4j2配置默认的日志模式? 到目前为止,我已经查看了Spring Boot的以下位置:

  • 问题内容: 在应用程序中,我可以使用以下命令指定自定义日志文件: 但是,如果我不指定一个,它会去哪儿? 我在以下任何文件夹中找不到它: 我 不 具备或任何其他日志记录的依赖。 我希望有类似的东西,因为默认配置运行嵌入式Tomcat: 问题答案: Spring Boot使用Commons Logging进行所有内部日志记录,但是使底层日志实现保持打开状态。 提供了Java Util Logging,

  • 我试图配置logback-classic来处理以下情况:所有来自My.class的、级别为debug或更高的消息都应该发送到stdout appender。 和所有级别为warn或更高的错误消息,也应该转到altout appender中,无论它们来自哪里。但我似乎无法让它起作用。

  • 我无法使用logstash date插件解析日期字段,我的配置如下: 我得到的错误: [2018-06-19T11:51:20583][WARN][logstash.outputs.elasticsearch]无法将事件索引到elasticsearch。{:地位= 如果我添加一个目标: 然后它就可以工作了,但是timestamp字段采用logstash收到输入的日期,这不是我想要的。 为什么目标会

  • 与Jquery Mobile自动初始化共同协作 Working with Jquery Mobile's Auto-initialization 不像其他的Jq项目,比如jq和jq ui,Jquery Mobile会在加载到增强特性时马上应用它(远早于document.ready事件发生时)。这些特性会基于Jquery Mobile的默认配置应用,是针对默认的情形设计的,他可能符合你的需求,也可能

  • 问题内容: 我似乎无法弄清楚如何为Django安装设置“默认”记录器。我想在中使用Django 1.3的新LOGGING设置。 我看过Django Logging Doc的示例,但在我看来,他们只是设置了处理程序,该处理程序将为特定的记录程序记录日志。在他们的示例中,他们为名为“ django”,“ django.request”和“ myproject.custom”的记录器设置了处理程序。 我