gpt4 book ai didi

java - Spring 中的日志消息银行

转载 作者:行者123 更新时间:2023-12-02 10:30:40 26 4
gpt4 key购买 nike

我正在使用 org.apache.logging.log4j.Logger 进行日志记录:

private static final Logger logger = LogManager.getLogger(MainController.class)

然后

logger.info("Register request from " + User.getUuid());

我想将记录器生成的存储库的所有消息保存在一个地方,例如属性文件,以便我可以轻松地将它们发送给技术出版部门进行审查。

例如,理想情况下会有一个文件(我们称之为 messages.properties),其中包含以下内容:

register_request_from_user_uuid="注册来自 "+ User.getUuid() 的请求

有没有办法在Spring中做到这一点?有没有其他方法来保存所有日志消息?您熟悉可以编排它的工具吗?

谢谢

最佳答案

这里是一个简单的例子,你可以根据自己的需要进行修改:

在您的src/main/resources中创建一个文件messages.properties,其内容为:

test.message=TEST MESSAGE {0}

{0} 是要传递给本地化字符串的“参数”(示例中的 + User.getUuid())

然后您可以将您的记录器调用为:

logger.debug(MarkerManager.getMarker("TEST"), 
new LocalizedMessage(ResourceBundle.getBundle("messages"), "test.message", "hello!"));

第三个参数“hello”再次连接到上面messages.properties中定义的{0}占位符。

打印到控制台的输出是:

2018-12-05 15:12:09.902 DEBUG 23376 --- [restartedMain] com.example.SpringDemoApplication:测试消息:你好!

关于java - Spring 中的日志消息银行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53632543/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com