我发现没有办法让PyCharm管道处理我的Python程序的输出。具体来说,我使用从我的节目班扬(Python Bunyan从Node Bunyan移植),它生成JSON日志标准错误:如何通过另一个文本处理程序使PyCharm管道python程序输出
Python代码:
logger.info({'nick': 'Duke', 'age': 30, 'expertise': ['Java', 'Javascript', 'Python']},
'Hi %(nick)s, your expertise recorded!');
原始输出:
cymp:scratches cyue$ python logging-wander.py
{"name": "__main__", "expertise": ["Java", "Javascript", "Python"], "nick": "Duke", "age": 30, "time": "2016-08-02T18:16:12Z", "msg": "Hi Duke, your expertise recorded!", "hostname": "cymp.local", "level": 30, "pid": 1418, "v": 0}
管加工输出:
cymp:scratches cyue$ python logging-wander.py 2>&1 | bunyan
[2016-08-02T18:16:15Z] INFO: __main__/1419 on cymp.local: Hi Duke, your expertise recorded! (nick=Duke, age=30)
expertise: [
"Java",
"Javascript",
"Python"
]
输出是管道到bunyan的命令行工具以获得漂亮的打印效果(终端中甚至有颜色,但这里没有显示)。
在WebStorm for js中,我可以添加一个本地shell脚本作为'节点解释器'来完成这项工作,但是对于PyCharm而言,'Run/Debug Configuration'对话框中的'Python解释器'没有'Add'选项,当我尝试将shell脚本添加为“Project Interpreter”时,它会投诉The selected file is not a valid home for PythonSDK
。
我想知道任何解决方法可以用来获得我想要的结果吗?
如果您只是需要彩色输出的源代码,有一个很好的插件pycharm称为[grep的控制台(https://plugins.jetbrains.com/插件/ 7125?PR = pycharm)。 – zegkljan
谢谢,但颜色对我来说是次要的,我更新了这个例子来对比结果。在json中保持日志数据的结构时,最需要可读性。 –