gpt4 book ai didi

c++ - 不正确的 boost 日志时间戳格式

转载 作者:太空狗 更新时间:2023-10-29 19:52:59 34 4
gpt4 key购买 nike

我正在使用 Boost 1.54 Log 并按以下方式初始化我的日志记录:

namespace logging = boost::log;
namespace src = boost::log::sources;
namespace expr = boost::log::expressions;
namespace sinks = boost::log::sinks;
namespace attrs = boost::log::attributes;
namespace keywords = boost::log::keywords;

BOOST_LOG_ATTRIBUTE_KEYWORD(line_id, "LineID", unsigned int)
BOOST_LOG_ATTRIBUTE_KEYWORD(severity, "Severity", severity_level)
BOOST_LOG_ATTRIBUTE_KEYWORD(tag_attr, "Tag", std::string)
BOOST_LOG_ATTRIBUTE_KEYWORD(timestamp, "TimeStamp", boost::posix_time::ptime)

logging::add_common_attributes();
boost::shared_ptr<logging::core> core = logging::core::get();

// setup console log
logging::add_console_log (
std::clog,
keywords::filter = severity >= debug,
keywords::format = (
expr::stream << expr::format_date_time(timestamp, "%Y-%m-%d %H:%M:%S") <<
line_id << " [" << severity << "] " << expr::smessage
)
);

这是生成的输出示例:

2013-09-13 10:17:471 [warn] You are running in debug mode - assertions are enabled.
2013-09-13 10:17:472 [info] loading data completed
2013-09-13 10:17:473 [debug] applying xxx completed
2013-09-13 10:17:474 [debug] computing xxx completed
2013-09-13 10:17:475 [debug] xxx completed
2013-09-13 10:17:476 [info] xxx completed
2013-09-13 10:17:477 [debug] xxx completed
2013-09-13 10:17:478 [debug] computing xxx completed
2013-09-13 10:17:479 [info] testing xxx completed
2013-09-13 10:17:4710 [info] xxx
2013-09-13 10:17:4711 [debug] xxx completed

Timestamp 的输出秒数完全不正确,但根据 Boost Log 文档,%S 是秒数的正确格式设置。这会是一个错误吗?

最佳答案

时间和 line_id 之间没有空格,所以它们一起运行。

关于c++ - 不正确的 boost 日志时间戳格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18781574/

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