人妖在线一区,国产日韩欧美一区二区综合在线,国产啪精品视频网站免费,欧美内射深插日本少妇

新聞動態(tài)

如何調(diào)整Docker中nginx的日志級別詳解

發(fā)布日期:2021-12-11 04:33 | 文章來源:站長之家

Intro

最近發(fā)現(xiàn)我們的一個應用產(chǎn)生了很多日志,而這些日志大多都是 nginx 的 access_log,我們默認會把標準輸出收集到 es 里分析應用日志,但是很多都是 access_log 就可能會掩蓋掉真實的錯誤日志,所以可能有時候我們并不想輸出這些 access_log,示例如下:

Nginx Dockerfile

去 Github 上扒了一下 Nginx 的 Dockerfile, docker-nginx/Dockerfile at master · nginxinc/docker-nginx (github.com)

可以看到 nginx 默認會把 access_log 和 error_log 鏈接到標準輸出中,這也就是為什么我們在 docker logs 或者 kubectl logs 的時候能夠看到 access_log

我們可以在容器里執(zhí)行 cat /etc/nginx/nginx.conf 來查看默認的 nginx 配置

default nginx conf

從上面可以看出來 error_log 的級別是 notice,如果有需要也可以配置成 warn/error,具體的日志配置可以參考官方文檔介紹,可配置的日志級別有:debug, info, notice, warn, error, crit, alert, emerg

access_log 可以使用 off 直接禁用掉或者使用另外一個 path,這樣就不會直接輸出到標準輸出中,就不會有那么多的日志了

New conf

知道配置怎么修改了就比較方便了,只需要把我們新改的配置替換掉默認的配置就可以了,新的配置如下:

user  nginx;
worker_processes  auto;
error_log  /var/log/nginx/error.log error;
pid        /var/run/nginx.pid;
events {
    worker_connections  1024;
}
http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;
    access_log  off;
    sendfile        on;
    #tcp_nopush     on;
    keepalive_timeout  65;
    #gzip  on;
    include /etc/nginx/conf.d/*.conf;
}

然后在 Dockerfile 里用新的配置覆寫默認的配置:

# Copy custom nginx config
COPY /conf/nginx.conf /etc/nginx/nginx.conf

More

如果你想記錄 access_log 但是不想直接,可以配置 access_log 為另外的文件名即可,就會寫入對應配置的文件中,但不會直接輸出到標準輸出,也就不會造成采集的日志很多都是 access_log

如果不想記錄,不關(guān)心 access_log 可以直接使用 off 配置禁用 access_log,如果想選擇性地記錄比如 2xx/3xx 不記錄,其他情況記錄也是可以的,nginx 文檔上也有介紹,可以根據(jù)自己需要進行選擇

map $status $loggable {
    ~^[23]  0;
    default 1;
}
access_log /path/to/access.log combined if=$loggable;

References

  • https://notestack.io/public/configure-nginx-logging-in-a-docker-container/874f1253-cf1a-4c62-9d2d-467ab23c258d
  • https://docs.nginx.com/nginx/admin-guide/monitoring/logging/
  • https://github.com/nginxinc/docker-nginx/blob/master/stable/alpine/Dockerfile

到此這篇關(guān)于如何調(diào)整Docker中nginx的日志級別的文章就介紹到這了,更多相關(guān)Docker中nginx日志級別內(nèi)容請搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!

版權(quán)聲明:本站文章來源標注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務器上建立鏡像,否則將依法追究法律責任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學習參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。

實時開通

自選配置、實時開通

免備案

全球線路精選!

全天候客戶服務

7x24全年不間斷在線

專屬顧問服務

1對1客戶咨詢顧問

在線
客服

在線客服:7*24小時在線

客服
熱線

400-630-3752
7*24小時客服服務熱線

關(guān)注
微信

關(guān)注官方微信
頂部