首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何规避spdlog消息?

如何规避spdlog消息?
EN

Stack Overflow用户
提问于 2019-10-04 09:09:00
回答 2查看 1.5K关注 0票数 0

我用spdlog记录所有消息。我的日志模式是JSON格式。我在所有的日志调用中手动转义消息。是否存在在spdlog层中自动转义消息的方法?

手动转义的样本:

代码语言:javascript
复制
spdlog::info(escape_message(data));

它应该在spdlog层内自动处理:

代码语言:javascript
复制
spdlog::info(data);
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-10-04 10:47:30

我找到了解决问题的方法。

我应该实现一个自定义的formatter类,然后在format方法中,通过例如escape_message(msg.payload.data())转义消息,然后调用spdlog::log(msg.source, msg.level, escape_message(msg.payload.data()))spdlog::info或.在这个方法里。

注意事项:在format方法中,我设置了一个日志模式,因为在类之外,如果调用set_formatter,然后调用set_pattern,则无法正常工作。

票数 0
EN

Stack Overflow用户

发布于 2019-10-04 15:53:05

告诉spdlog格式化单个字符串,而不是将字符串本身解释为格式字符串:

代码语言:javascript
复制
spdlog::info("{}", data);
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58233273

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档