1
verydxz 2016-09-13 16:10:25 +08:00
也同问最后一句咯,也觉得 logging 各种不好用啊,跨进程的不行,想按日期 rotate 自带那个貌似条件很严格。现在想法是小东西就 stderr 再重定向到文件,大的就用专门的工具比如 Sentry ?
|
2
julyclyde 2016-09-13 16:14:54 +08:00
sentry 是以条为单位的,而且带采样、聚合,并不是用来收日志的东西
|
3
Karblue 2016-09-13 16:31:15 +08:00
直接粗暴的 print + file write 自己用。够用了。 其实写 python 就是随心。 怎么爽怎么写。没必要纠结用哪个 log 模块
|
5
20150517 2016-09-13 16:38:39 +08:00
用 print 还不如 logging,py 的 logging 其实还是很不错的,如果不喜欢,也可以用 logbook 包
|
6
est 2016-09-13 17:04:46 +08:00 1
因为 print 就一个单词。 logging 你要三行。
|
7
whwq2012 2016-09-13 17:10:23 +08:00 via Android
我是没意识到,我还是太菜了
|
8
sudoz 2016-09-13 17:13:30 +08:00
你这么一说我也是,几乎不用 logging
|
9
dongxiaozhuo 2016-09-13 17:14:02 +08:00 via iPhone
大项目的话,做一个标准的 logger 封装,会很方便,参考 open stack 的 oslo 项目。项目不大,直街标准输出和错误输出,简单粗暴, rotation 用 cronolog 。
|
10
kinghui 2016-09-13 17:28:20 +08:00
使用 logging 模块输出日志, 使用 supervisor 启动并通过 supervisor 将日志存放到文件, 通过 logrotate 进行切割. Sentry 主要用来做错误收集.
不通过 supervisor 切割日志主要因为 supervisor 启动多进程程序日志切割有问题. |
11
lrh3321 2016-09-13 18:21:44 +08:00
平时随便写写,直接就 print 输出,也不会去看日志
|
12
a412739861 2016-09-13 18:26:36 +08:00
我写爬虫的时候,还不知道 logging 模块,就是这么简单………
不过爬虫都是一次性, print 简单点,所以不写吧。 如果长期的,我会选择 logging ,最近也在替换以前的 print 。 |
13
glasslion 2016-09-13 21:57:37 +08:00 2
都是国内项目吧, 说句难听的, 那些作者未必有能力读懂 logging 的官方文档
|
14
catxo 2016-09-13 23:18:26 +08:00
大多数项目估计都是小工具吧,那就无所谓了
正规一点的项目,日志哪能没有啊 |
15
BOYPT 2016-09-13 23:26:08 +08:00 2
其实是因为 python 的应用范围广泛,领域开发者们不一定有完整的 python 工程经验。爬虫就是一个例子,一个完全没有基础的人看会几个关键字就能写爬虫了。
|
16
clino 2016-09-13 23:27:43 +08:00
logging 主要是有需要时间信息的时候比较好
|
17
reorx 2016-09-14 00:19:38 +08:00 via iPad
因为写爬虫的多数都水平一般
|
19
macroideal 2016-09-14 08:57:18 +08:00 via iPhone
@est print 变通太小了, logging 可以设置格式加头,方便调试,可以设置开关,等级,用 print 说明你用的不多
|
20
codeframe 2016-09-14 10:07:41 +08:00
http://hairysun.com/blog/2005/02/19/guido-van-rossum-building-an-open-source-project/ 大家可以看看 Guido 是怎么 Debug 的
|
21
est 2016-09-14 10:15:49 +08:00
@macroideal 来来来,如何在插入一行 log 之前先插入一个空白行?注意是完全的空白行。不能有头。你给我变通一下。
|
22
macroideal 2016-09-14 10:23:40 +08:00 via iPhone
@est 做两个 logger 两个 format
为啥要这样的需求 |
23
masterzh01 2016-09-14 14:32:55 +08:00
|
24
makeapp 2016-09-16 12:10:36 +08:00
logging 模块更加完善,有很多功能。我通常是用 logging 做日志记录进行事后分析, print 作为实时监控,可以直接在 terminal 中查看爬虫实时状态。
|