天天看点

python记录时间日志_Python日志记录模块记录时间戳包括微秒

我使用的是python的日志模块,但是需要时间戳来包含微秒。时间戳似乎只能精确到毫秒。

这是我的测试代码import logging

logging.basicConfig(format='%(asctime)s %(levelname)s {%(module)s} [%(funcName)s] %(message)s',

datefmt='%Y-%m-%d,%H:%M:%S:%f', level=logging.INFO)

class log2_test():

def test_class(self):

logging.warning("Warning2 inside the class")

def get_started2():

logging.info("Logged2 Here")

if __name__ == '__main__':

get_started2()

这是我得到的输出--

2015-07-09,16:36:37:f INFO {logger} [get_started2] Logged2 Here

不知何故,无法识别%f。

python版本是2.7.6。

如何获取包含微秒的时间戳?

事先谢谢。

最佳答案:

我认为strftime()不会直接支持%f。记录器提供毫秒作为单独的毫秒,因此您可以在现有时间戳之后自己添加它,如下所示:logging.basicConfig(format='%(asctime)s.%(msecs)03d %(levelname)s {%(module)s} [%(funcName)s] %(message)s', datefmt='%Y-%m-%d,%H:%M:%S', level=logging.INFO)

这使用脚本为我提供了以下输出:

2015-07-10,09:21:16.841 INFO {test script} [get_started2] Logged2 Here