Django + Gunicorn不正确的日志时间戳

时间:2017-08-08 10:40:47

标签: django logging timezone timestamp utc

在我的Django设置和我的机器上,我有utc + 3配置的时间,所以期望得到所有日志都在utc + 3,但结果是,实际上它们非常混乱:

[2017-08-08 10:29:22 +0000] [1] [INFO] Starting gunicorn 19.7.1
[2017-08-08 10:29:22 +0000] [1] [DEBUG] Arbiter booted
[2017-08-08 10:29:22 +0000] [1] [INFO] Listening at: http://0.0.0.0:8000
[2017-08-08 10:29:22 +0000] [1] [INFO] Using worker: sync
[2017-08-08 10:29:22 +0000] [7] [INFO] Booting worker with pid: 7
[2017-08-08 10:29:23 +0000] [1] [DEBUG] 1 worker
[2017-08-08 13:29:26 +0300] [7] [INFO] [dashboard.views:9] Displaying menu

设定:

TIME_ZONE = 'Europe/Moscow'
USE_TZ = True

也许您可以提供一些提示/信息如何配置或调试它?

有一刻我认为这是一个枪炮的问题,但它使用Django设置soo我不知道出了什么问题:/

2 个答案:

答案 0 :(得分:1)

Gunicorn的登录时间不会在Django时区上传,但在本地机器上,所以为了获得正确的时区,您应该配置本地机器以及如何操作取决于操作系统上运行的操作系统。

对于Debian / Ubuntu:

  
      
  1. sudo dpkg-reconfigure tzdata
  2.   
  3. 按照终端中的说明进行操作。
  4.   
  5. 时区信息保存在/ etc / timezone中 - 可在
  6. 下编辑或使用   

如果您使用的是CentOS,可以在this article中查看。

有关其他选项,请在Google中查看。

希望它有所帮助。

答案 1 :(得分:0)

因此,时间戳是正确的,但由于我的公司代理设置不同。事实证明,处理不同时区的最佳方法是使用utc,除了向用户呈现外。