过多的日志记录会影响Web应用程序的性能吗?

时间:2015-07-27 15:18:30

标签: python django performance logging web

对于用python / Django编写的Web应用程序,记录卷会影响Web性能吗?

对于Go,我可以启动goroutine来异步写日志,但是AFAIK,python日志记录是同步的,日志写入是请求处理的一部分。但是,与访问数据库或渲染模板等其他活动相比,它通常需要多长时间?我应该担心吗?

我没有使用任何特定的日志处理程序,只是写入普通日志文件。

我知道我可以调整日志记录级别以减少生成的日志量,但如果它不会严重影响性能,我仍然希望保留尽可能多的日志。

2 个答案:

答案 0 :(得分:1)

您应该记录所有可用于未来分析的数据。但是,如果要同步记录太多数据,则应该关注日志记录开销。异步日志记录可以有很多选项。

答案 1 :(得分:1)

如果您担心I / O延迟(一个有效的问题),您可以使用QueueHandler / QueueListener从Web应用程序登录到队列,如文档here中所述。 QueueListener可以在单独的线程上运行,并防止您的请求处理程序线程在记录I / O时陷入困境。如果您使用的是Python 2.x,则QueueHandler / QueueListener可在PyPI的logutils包中找到。