如何使用 Spring Boot 将日志消息写入文件?

2024-01-09

我想将消息记录在文件中而不是控制台上。我使用的是Spring Boot,我的配置如下:

应用程序属性:

logging.level: DEBUG
logging.level: ERROR
logging.file: ${HOME}/application.log

我只在我的中收到 INFO 的日志消息application.log文件,但我也想要错误和调试消息。

我的要求是我想要错误消息error.log文件和调试消息debug.log和 INFO 消息info.log.

非常感谢任何帮助。


Spring Boot 允许您使用 application.properties 配置日志系统的一些基本方面,但是有limits http://docs.spring.io/spring-boot/docs/1.2.3.RELEASE/reference/htmlsingle/#howto-logging:

要配置日志系统的更细粒度设置,您需要使用相关日志系统支持的本机配置格式。

换句话说,如果您想做的事情没有通过属性明确支持,您将无法添加和编辑logback.xml文件(假设您正在使用 logback)。

那么,让我们看看您的要求:

  1. “我想将消息记录在文件中而不是控制台上。”

根据docs http://docs.spring.io/spring-boot/docs/1.2.3.RELEASE/reference/htmlsingle/#boot-features-logging-file-output:

默认情况下,Spring Boot只会记录到控制台,不会写入日志文件。如果你想写日志文件此外(强调)到控制台输出,您需要设置一个logging.file或logging.path属性(例如在您的application.properties中)。

换句话说,not无法使用属性来记录到控制台。

  1. “我只在 application.log 文件中获取信息日志消息,但我也想要错误消息和调试消息。”

默认情况下,Spring Boot 会在 INFO 级别记录日志,其中应该包含 ERROR,您确定吗?not使用默认设置获取错误日志?

另外,您只指定要记录的最高级别,而不是每个级别,并且必须指定要设置级别的记录器。

这是行不通的:

logging.level: DEBUG
logging.level: ERROR

这是如何根据以下内容配置自定义日志级别的示例docs http://docs.spring.io/spring-boot/docs/1.2.3.RELEASE/reference/htmlsingle/#boot-features-custom-log-levels:

logging.level.org.springframework.web:调试
logging.level.org.hibernate: 错误

您还可以使用logging.level.*属性来设置根记录器的级别,如下所示:

logging.level.ROOT: DEBUG

请注意,在 ROOT 记录器上设置 DEBUG 日志记录将生成大量日志。我刚刚在这里进行了测试,在启动时获得了大约 13MB 的日志,没有执行任何操作。

  1. “我想要 error.log 文件中的错误消息、debug.log 中的调试消息以及 info.log 中的信息消息。”

同样,这不能单独使用属性来完成。 Spring Boot 允许你配置一个logging.file属性将包含所有日志。

有关可用日志记录属性和示例值的完整列表,请参阅here http://docs.spring.io/spring-boot/docs/1.2.3.RELEASE/reference/htmlsingle/#common-application-properties.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 Spring Boot 将日志消息写入文件? 的相关文章

  • 无法使用基于日志的指标显示数据(指标类型:“计数器”)

    我正在努力创建一个带有 stackdriver 监控和基于日志的指标的图表 我的指标是一个计数器 默认情况下没有单位 日志可用于我的基于日志的指标 但是当我使用我的指标创建图表时 它说no data is available for the
  • 在spring data jpa中实现动态数据源

    我有 N 个服务器 N 个数据库和 N 个配置 看下面的场景 因此 对于每个请求 我都需要根据配置访问服务器和数据库 spring data jpa如何实现动态数据源 你可以试试抽象路由数据源 https docs spring io sp
  • 最佳实践 - 存储过程日志记录

    如果您有一个长时间运行的 SP 您会以某种方式记录其操作还是只是等待此消息 命令成功完成 我认为 关于这个主题可以有很多解决方案 但是有没有最佳实践 一个经常使用的简单解决方案 EDIT 我发现了一个关于这个主题的有趣链接 http web
  • 使用HTTP/2协议时如何传递Keep-alive元数据?

    我有一个angular使用带有嵌入式 Spring Boot 的 Web 应用程序tomcat服务器在后端 我想让已建立的 http 连接保持更长时间 以提高后续 http 请求的响应时间 和http 1 1浏览器被告知通过添加来保持 ht
  • 如何防止嵌入式netty服务器使用spring-boot-starter-webflux启动?

    我想使用 Springs 新的反应式在客户端和服务器应用程序之间建立通信webflux扩大 对于依赖管理我使用gradle 我在服务器和客户端上的 build gradle 文件基本上是 buildscript repositories m
  • Spring Boot 从命令行执行将文件添加到类路径

    我正在使用 Netbeans 8 2 开发 Spring 应用程序 我遇到问题的这个特定应用程序是 Spring Boot 1 5 3 应用程序 我有一个 spring xml 文件和一个 application properties 它们
  • Spring批量写入器限制

    我正在工作 Spring Batch 项目 从数据库读取记录然后写入rabbitmq 然后发送到HTTP消息网关 网关有150TPS我需要将我的应用程序限制为 150TPS 有没有办法带弹簧批的油门或者还有其他更好的方法吗 你能行的 在 S
  • Logback 配置在单行上有异常吗?

    我的日志被提取 传输并合并到 elasticsearch 中 多行事件很难跟踪和诊断 有没有办法使用收集器和正则表达式将异常行分组到单个记录中登录配置 https logback qos ch manual layouts html xTh
  • 在 log4j 中配置 RollingFileAppender

    我正在开发一组网络服务 我们希望有一个每日轮换的日志 我想得到org apache log4j rolling RollingFileAppender来自 log4j extras 配套工作 因为文档表明这最适合生产环境 我有两个主 log
  • JavaMail 的 DCH 类错误

    我正在尝试使用 Glassfish 3 1 提供的 jar 文件在 Java EE 6 中使用 JavaMail 设置一个简单的日志记录测试 关于这个主题似乎有很多问题 但我还没有找到任何有帮助的答案 我的测试代码如下所示 import j
  • Spring Boot:Apache derby 池为空。 30 秒内无法获取连接

    运行一段时间后 我收到此错误 路径 上下文中 servlet dispatcherServlet 的 Servlet service 抛出异常 请求处理失败 嵌套异常是 org springframework orm jpa JpaSyst
  • Spring Tool Suite/Gradle/MapStruct - 找不到映射器的实现

    我在 StackOverflow 上搜索了我的问题的答案 虽然我找到了许多提供的解决方案 但没有一个适合我的情况 我必须在工作项目中使用 MapStruct 所以我正在尝试通过教程点 https www tutorialspoint com
  • NodeJS 中的缩进多行日志记录

    我要打印JSON stringify d 反对控制台 将上下文作为 Mocha 测试套件输出的一部分 当测试缩进时 我希望对象日志行向右缩进足够远 例如 3 4 个制表符空格 以便它们可以识别地位于右侧describe group 我怎样才
  • 如何在 NextJS 中记录所有路由

    我对 NextJS 非常陌生 我目前有一个非常简单的应用程序 它提供少量页面 如果路由不存在 则返回 404 页面 我想记录每个请求 包括不存在的页面并返回 404 页面 我正在 docker 容器内运行该应用程序 或者我希望将日志写入标准
  • 打印到 STDOUT 和日志文件,同时删除 ANSI 颜色代码

    我有以下函数来为屏幕消息着色 def error string return 033 31 1m string 033 0m def standout string return 033 34 1m string 033 0m 我按如下方式
  • Spring boot 2.1.x 如何通过基本身份验证保护执行器端点

    我正在尝试构建一个 Spring Boot 应用程序 并希望利用 Actuator 功能 但我想保护 Actuator health shutdown 等的端点 我有以下配置 但似乎不起作用 也就是说 应用程序从不提示输入凭据 或者当邮递员
  • 带有 spring-kafka 的 Kafka 死信队列 (DLQ)

    最好的实施方式是什么死信队列 DLQ Spring Boot 2 0 应用程序中的概念 使用 spring kafka 2 1 x 来处理无法处理的所有消息 KafkaListener某些bean发送到某些预定义的Kafka DLQ主题的方
  • Google Cloud:X-Cloud-Trace-Context 与应用程序日志traceId 不同

    我有一个部署在谷歌云中的 Spring Boot 应用程序 我面临一个相当奇怪的问题 X Cloud Trace Context 由谷歌设置 我想是负载均衡器 但应用程序级别日志的traceId具有不同的traceId 与我在邮递员的响应标
  • 我可以将 Spring 的 MockMvc 与 Jersey 资源一起使用吗?

    我已经通过 Spring Boot 的启动 POM 成功集成了 Spring 和 Jersey 并且我有几个 Jersey 端点 现在我想对资源进行单元测试 我似乎无法让 MockMvc 工作 尝试获取资源端点时出现 404 错误 我知道那
  • 通过 Gradle 进行测试时记录日志

    在测试时 Gradle 似乎将 stdout stderr 重定向到project dir build reports tests index html 有没有办法避免这种重定向 并将内容打印到控制台 附加信息 这是一个 Scala 2 9

随机推荐

  • InlineData 或 TestCase 属性的 Microsoft 单元测试替代方案是什么?

    Microsoft 以外的单元测试框架可以选择使用属性添加输入参数和预期结果 例如 NUnit 有 TestCase 12 4 3 并且 xUnit 有 InlineData 5 1 3 9 微软采取什么方法来实现这一目标 需要添加Nuge
  • 手动(aapt)将本机库.so添加到apk

    由于多种原因 我正在手动构建我的项目 或多或少遵循以下步骤http geosoft no development android html http geosoft no development android html 不使用 ant 我
  • 如何创建一个新线程以使 pcap_loop() 和 gtk_main() 兼容?

    这两个函数都是无限循环 一旦在同一线程中调用 程序就会挂起 gtk main pcap loop adhandle 0 packet handler NULL 当我点击 开始 按钮时 我想要pcap to start工作 如果我按下 停止
  • 元素中插入

    我喜欢 p Variable Text p 我希望它是 p Variable span Text span p 这可以通过 JavaScript 函数实现吗 或 jQuery 哦 是的 p 元素有一个 ID p 元素内的文本是可变的 但始终
  • 打嗝不起作用:FileNotFoundException:无法在类路径上找到 ../as__init.class 或 ../as.clj

    我刚刚开始使用 clojure 我正在尝试构建一个小型网络应用程序 我想尝试打嗝 但似乎不起作用 我的代码如下 项目 clj defproject WebTest 0 1 0 SNAPSHOT description FIXME write
  • Django SECRET_KEY 是每个实例还是每个应用程序?

    这个问题 https stackoverflow com questions 7382149 purpose of django setting secret key 47117966 noredirect 1 comment9026458
  • 从 selectKbest 获取特征名称

    我使用 Scikit 学习selectKbest从 900 个特征中选择大约 500 个最佳特征 如下 其中 d 是所有特征的数据框 from sklearn feature selection import SelectKBest chi
  • 如何更改小型转储中模块的校验和?

    我编写 和销售 的软件在分发之前经过压缩和加密 每次发布新版本时 我都会在压缩和加密之前保留所有 map 文件和生成的二进制文件 包括 exe 当它在客户端计算机上崩溃时 我会得到一个小型转储 我在 Visual Studio 中打开这些小
  • Matplotlib窗口出现在后面?

    每当我打电话show 在 matplotlib 中 绘图窗口出现在所有其他窗口后面 我必须最小化所有内容才能看到它 有什么方法可以阻止这种情况或以编程方式将其带到前台 在 OSX Lion 上 Python 2 7 出色地 这个答案是在已接
  • ifelse 命令中的多个 true 条件

    在R中我们使用ifelse 测试 是 否 命令 我面临的问题是 如果协调结果为真 我需要执行各种声明 例如 ifelse fp 月 1 fp sum sales 1 fp sum sales 2 0 所以我给出两个条件 if fp mont
  • 为什么我的 Django 表单一直显示“此字段为必填字段”

    有谁知道为什么我的表单 文件选择器 在更简单的版本中工作时不断返回 此字段是必需的 我的看法是 def add attempt request m id a id template loader get template add attem
  • 在 C++ 中将 pytorch 张量转换为 opencv mat,反之亦然

    我想在 C 中将 pytorch 张量转换为 opencv mat 反之亦然 我有这两个功能 cv Mat TensorToCVMat torch Tensor tensor std cout lt lt converting tensor
  • 我可以在 C 程序中使用 C++ 库吗?

    我正在用 C 编写一个程序 但我想使用像向量一样的动态库 是否可以在 C 程序中使用 C 库 Not std vector 不 任何模板化的东西都是正确的 一般来说 使用 C 代码并不有趣 但这是可以做到的 您必须将类包装在 C 代码可以调
  • Assembly.LoadFrom 和依赖项

    我一直在尝试使用 Assembly LoadFrom 设置一个插件系统 该系统动态加载 exe 目录的子文件夹中的 dll 我有一个由 exe 和插件引用的接口库 构建完成后 我将插件 dll 复制到子文件夹中 不同的插件可能有共同的库 所
  • Android 可绘制语音气泡

    我已经找了好几天了 但找不到任何关于如何绘制气泡或在哪里绘制 9 个补丁图像用作背景的好线索 我是一个糟糕的艺术家 有人可以帮忙吗 我找到的最好的示例位于 Stack Overflow 上 但它是用 Objective C 编写的 如何在i
  • Java 方法引用抛出 NPE

    于是我就上了一堂课 public class MenuBar extends JMenuBar MenuBarController controller public MenuBar JMenu menu new JMenu File me
  • Google Analytics 跟踪代码给出 CORS 错误

    我正在使用 在我看来 昨天从我的帐户获得的新 Google Analytics 跟踪代码 它使用了一些 全局站点标签 我已按照 GA 的指示将其放置在我的 顶部 但在加载页面时遇到跨源错误 因此 GA 无法正确跟踪我的网站 这是确切的消息
  • django Rest 框架中的 django_countries

    我正在尝试创建一个 API 它可以使用 django countries 返回所有国家 地区 我正在尝试以下操作 但它不起作用 作为一个单独的字段 它工作正常 但对于完整的国家 地区列表 它会给出错误 from django countri
  • 我们可以在 noexcept 规范中引用成员变量吗?

    请考虑以下代码片段 template
  • 如何使用 Spring Boot 将日志消息写入文件?

    我想将消息记录在文件中而不是控制台上 我使用的是Spring Boot 我的配置如下 应用程序属性 logging level DEBUG logging level ERROR logging file HOME application