洛杰森

logjson的Python项目详细描述


https://img.shields.io/badge/stdlib--only-yes-green.svghttps://travis-ci.org/cjrh/logjson.svg?branch=masterhttps://coveralls.io/repos/github/cjrh/logjson/badge.svg?branch=masterhttps://img.shields.io/pypi/pyversions/logjson.svghttps://img.shields.io/github/tag/cjrh/logjson.svghttps://img.shields.io/badge/install-pip%20install%20logjson-ff69b4.svghttps://img.shields.io/pypi/v/logjson.svghttps://img.shields.io/badge/calver-YYYY.MM.MINOR-22bfda.svg

logjson

goal:轻松生成结构化json日志记录。 logstash模式是可选的。

importloggingimportlogjsonlogger=logging.getLogger('blah')handler=logging.StreamHandler()handler.setFormatter(logjson.JSONFormatter(pretty=True))logger.addHandler(handler)logger.info('hi %s%s!','you','there')

输出:

{"name":"blah","msg":"hi %s %s!","args":["you","there"],"levelname":"INFO","levelno":20,"pathname":"<snip>","filename":"test_main.py","module":"test_main","exc_text":null,"stack_info":null,"lineno":17,"funcName":"test_main","created":1511750128.6285746,"msecs":628.5746097564697,"relativeCreated":23.08201789855957,"thread":139929130264384,"threadName":"MainThread","processName":"MainProcess","process":18460,"message":"hi you there!","created_iso":"2017-11-27T02:35:28.628575+00:00"}

logstash模式只有一个参数:

logger=logging.getLogger('ls')handler=logging.StreamHandler()handler.setFormatter(logjson.JSONFormatter(pretty=True,logstash_mode=True))logger.addHandler(handler)logger.info('logstash test')

输出:

{"@message":"logstash test","@source_host":"localhost.localdomain","@timestamp":"2017-11-27T02:35:28.631275+00:00","@fields":{"name":"ls","msg":"logstash test","args":[],"levelname":"INFO","levelno":20,"pathname":"<snip>","filename":"test_main.py","module":"test_main","exc_text":null,"stack_info":null,"lineno":42,"funcName":"test_logstash","created":1511750128.631275,"msecs":631.274938583374,"relativeCreated":25.782346725463867,"thread":139929130264384,"threadName":"MainThread","processName":"MainProcess","process":18460}}

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java变量始终存储0值。为什么?   如何使用Java/REST将Azure blob从一个存储容器移动到另一个存储容器?   java将commons DBCP从1.2升级到1.4,我应该害怕吗?   java如何使用分隔符拆分字符串?   java使用数组读取json对象   java在groovy中切片字符串   交换数组java的两个邻域元素   java移动用于确定字符串是否为回文的逻辑   java Android应用程序在一个活动中崩溃   java Sparkjava将webapp文件夹设置为静态资源/模板的文件夹   java复杂条件表达式,用户易用。   java如何仅在表存在时从表中选择值   java I无法将数据从Recyclerview传递到其他活动   java数据结构最佳设计(大数据)   java Android从DatePickerDialogFragment中删除日历视图   java将数据从Firebase获取到片段   数组。sort()在java中运行不正常