要設置 Nginx 日志以便于后續分析,請按照以下步驟操作:
打開 Nginx 配置文件:
在大多數系統上,Nginx 配置文件位于 /etc/nginx/nginx.conf 或 /etc/nginx/sites-available/default。使用文本編輯器打開配置文件,例如:
sudo nano /etc/nginx/nginx.conf
或
sudo nano /etc/nginx/sites-available/default
配置日志文件路徑:
在 Nginx 配置文件中,找到 http 塊,然后找到 access_log 和 error_log 指令。這兩個指令分別定義了訪問日志和錯誤日志的文件路徑。你可以根據需要修改這些路徑,例如:
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
這將訪問日志和錯誤日志分別存儲在 /var/log/nginx/access.log 和 /var/log/nginx/error.log 文件中。
配置日志格式:
默認情況下,Nginx 使用 combined 日志格式。然而,你可能需要根據你的分析工具或需求使用不同的日志格式。要更改日志格式,請在 http 塊內添加或修改 log_format 指令。例如,要將日志格式更改為 json,請使用以下配置:
log_format json '{ "time": "$time_iso8601", "remote_addr": "$remote_addr", "request": "$request", "status": "$status", "body_bytes_sent": "$body_bytes_sent", "http_referer": "$http_referer", "http_user_agent": "$http_user_agent" }';
然后,在 access_log 和 error_log 指令中使用新定義的日志格式:
access_log /var/log/nginx/access.log json;
error_log /var/log/nginx/error.log json;
重啟 Nginx 以應用更改:
保存配置文件并退出編輯器。然后,重啟 Nginx 以使更改生效:
sudo systemctl restart nginx
或
sudo service nginx restart
現在,Nginx 將按照你指定的格式和路徑記錄訪問日志和錯誤日志。你可以使用諸如 grep、awk、sed 等文本處理工具或日志分析工具(如 Elasticsearch、Logstash 和 Kibana)對這些日志進行分析。