Python Logging模块格式化程序

时间:2016-08-04 16:31:17

标签: python logging formatter

很难理解格式化程序选项。特别是字符串替换。如果我有一个非常长的python文件名,我如何让它切断它以保持一切均匀?

formatter = logging.Formatter('%(asctime)s %(name)-15s %(threadName)-10s %(levelname)-8s %(message)s')

虽然我知道我可以让-15s部分更长,以便给我更多空间,但我如何让它切断长文件名说'this_is_a_test_ok.py'而不只是填补一切?我希望我的最终输出非常棒。

1 个答案:

答案 0 :(得分:1)

刚试过它:

formatter = logging.Formatter('%(asctime)s %(name)-15.5s %(threadName)-10s %(levelname)-8s %(message)s')

将记录器的名称截断为5个字符。如何将其与填充相结合是另一个问题。