更改nginx中的访问日志时区

问题描述 投票:0回答:2

我正在使用默认日志格式运行 nginx

log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

它以以下格式打印访问日志

1.2.3.4 - - [27/Mar/2021:09:39:43 +0000] "GET /text.txt HTTP/1.1" 200 315 "-" "curl/7.55.1" "-"

但是我希望日志以

UTC +05:30
打印时间,这不是服务器的本地时间。我尝试在
env "TZ=Asia/Kolkata";
的顶部添加
nginx.conf
但没有成功。请建议如何做到这一点。

nginx timezone access-log
2个回答
2
投票

关于在 Nginx 日志中设置时区:工作正常;只需要为 nginx 守护进程设置“TZ”环境变量(例如在启动它的脚本中)。或者,如果您使用的是 Docker,请将其设置在 Dockerfile 中(或者如果您使用的是 docker-compose.yml 文件中的“环境”)。


0
投票

您可以设置一个volumeMount以与Hostnode使用相同的功能:

spec:
  volumes:
    - name: date-config
      hostPath:
        path: /etc/localtime
  containers:
      volumeMounts:
        - name: date-config
          mountPath: /etc/localtime
© www.soinside.com 2019 - 2024. All rights reserved.