您的位置:首页 > 编程语言 > Python开发

python tornado修改celery完成任务时的输出

2016-11-28 18:44 260 查看
脱离版本讲教程都是耍流氓:

protobuf==3.0.0
kombu==3.0.37
pika==0.9.14
celery==3.1.11
tornado==4.2
tornado-celery==0.3.5
tornado-redis==2.4.18

背景:

最近给tornado加一个任务队列,celery,然后遇到这么一个尴尬问题,因为是传序列化后的ProtoBuf对象进celery,返回也是一个ProtoBuf序列化后的对象,但celery会把这个对象打印出来,类似:

[2016-11-28 18:32:56,426: INFO/Worker-1] ==============IN handler_run==============
[2016-11-28 18:32:56,431: INFO/Worker-1] [100131][UpdateUserProfile 更新用户信息请求]
[2016-11-28 18:32:56,440: WARNING/Worker-1] G:\projects\myApp\venv\lib\site-packages\sqlalchemy\engine\default.py:450: Warning: Incorrect string value: '\xD6\xD0\xB9\xFA\xB1\xEA...' for column 'VARIABLE_VALUE' at row 478
cursor.execute(statement, parameters)
[2016-11-28 18:32:56,540: INFO/Worker-1] ret = True
[2016-11-28 18:32:56,546: INFO/Worker-1] ==============out handler_run=============
[2016-11-28 18:32:56,552: INFO/MainProcess] Task task.app_handler_run[2e37711b-1ee3-4c1a-b840-949ddfc1f73a] succeeded in 0.125999927521s: (dp1
S'_rsp_item'
p2
S'\x08\xef\x07\x10\x01\x1a\x06\x08\x01\x12\x02OK"\xc3%\n\xc0%\x08\xa3\x8e\x06\x12\x15\xe6\x97\xa0\xe6\x95\x...
非常尴尬,给日志文件带来不便。

于是用全局搜索,找到G:\projects\myApp\venv\Lib\site-packages\celery\worker\job.py 的第101行:

success_msg = """\
Task %(name)s[%(id)s] succeeded in %(runtime)ss: %(return_value)s
"""
替换成:

success_msg = """\
Task %(name)s[%(id)s] succeeded in %(runtime)ss: xxx!
"""
# success_msg = """\
#     Task %(name)s[%(id)s] succeeded in %(runtime)ss: %(return_value)s
# """
现在输出就工整多了:

[2016-11-28 18:35:45,835: INFO/Worker-1] ==============IN handler_run==============
[2016-11-28 18:35:45,841: INFO/Worker-1] [100131][UpdateUserProfile 更新用户信息请求]
[2016-11-28 18:35:45,848: WARNING/Worker-1] G:\projects\myApp\venv\lib\site-packages\sqlalchemy\engine\default.py:450: Warning: Incorrect string value: '\xD6\xD0\xB9\xFA\xB1\xEA...' for column 'VARIABLE_VALUE' at row 478
cursor.execute(statement, parameters)
[2016-11-28 18:35:45,956: INFO/Worker-1] ret = True
[2016-11-28 18:35:45,960: INFO/Worker-1] ==============out handler_run=============
[2016-11-28 18:35:45,973: INFO/MainProcess] Task task.app_handler_run[825cb52e-3db1-4cbe-b790-5c8629b8381d] succeeded in 0.138000011444s: xxx!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐