我有以下日志语句,我希望在日志中产生彩色线,但事实并非如此。日志设置为写入标准输出,还有其他东西正在编写彩色输出,工作正常,所以我知道它不是终端的问题。
LoggerFactory.getLogger("foo").info("no color \\033[1;35m COLOR \\033[0m no color")
这就是日志中显示的内容。
15:59:25 15:59:25 20:59:25,268: INFO [MyClazz] no color \033[1;35m COLOR \033[0m no color
是否可以在日志消息中添加颜色?如果是这样的话?
答案 0 :(得分:1)
我建议不要在日志中存储ANSI颜色转义序列/代码。至少你应该测试输出设备是否是TTY,并且仅在它是。
时写入“有色”输出话虽如此,你的问题是逃避反斜杠\
。您的输出应包含实际的\033
字符(八进制),即\x1b
(十六进制),
或27
(十进制)。试试这样:
LoggerFactory.getLogger("foo").info("no color \033[1;35m COLOR \033[0m no color")