You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置Tinylog捕获System.err系统错误流并输出到日志文件

Tinylog捕获System.err及第三方日志的配置方案

一、捕获System.err/System.out流配置

直接在你的tinylog.properties中添加如下配置,即可将JVM标准输出、标准错误流的内容全部交给Tinylog处理,按你的输出规则同时写入控制台和滚动文件:

# 将System.out重定向为Tinylog的INFO级别日志
stream.redirect.out = INFO
# 将System.err重定向为Tinylog的ERROR级别日志
stream.redirect.err = ERROR

二、第三方日志框架桥接配置

你当前看到的log4j警告、SLF4J绑定冲突警告,部分是第三方组件直接输出到System.err的,还有部分是因为你项目中存在多个日志实现导致的,建议同时配置日志桥接统一归集所有日志:

  • 先在Maven依赖中排除冲突的日志实现:找到引入slf4j-simple、slf4j-log4j12的父依赖,用<exclusions>标签将这两个依赖排除,避免SLF4J绑定冲突
  • 新增Tinylog的日志桥接依赖,版本和你当前使用的2.2.1保持一致:
<!-- SLF4J日志桥接:所有使用SLF4J输出的日志统一走Tinylog -->
<dependency>
    <groupId>org.tinylog</groupId>
    <artifactId>slf4j-tinylog</artifactId>
    <version>2.2.1</version>
</dependency>
<!-- Log4j 1.x日志桥接:所有使用Log4j 1.x输出的日志统一走Tinylog -->
<dependency>
    <groupId>org.tinylog</groupId>
    <artifactId>log4j1.2-api</artifactId>
    <version>2.2.1</version>
</dependency>

完成以上配置后重启应用,所有日志都会按你配置的规则输出到目标位置,不会再出现控制台有日志但文件没有的情况。

内容的提问来源于stack exchange,提问作者Neelesh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 09:45:03