웹 프로그래밍
nginx 로그 포맷 설정
Minius
2019. 9. 25. 11:13
반응형
nginx를 설치하고 난 뒤, 로그 포맷을 설정할 때
- 설정 파일
sudo vi /etc/nginx/nginx.conf
- 로그 포맷 설정하는 부분
- log_format main escape=json 으로 해주면 로그가 json 형식으로 나오게 된다.
http {
log_format main {
. . .
}
}
- 로그 변수들.
$http_user_agent
$http_cookie
$arg_name
$args
$binary_remote_addr
$body_bytes_sent
$bytes_sent
$connection
$connection_requests
$content_length
$content_type
$cookie_name
$document_root
$document_uri
$host
$hostname
$http_name
$https
$is_args
$limit_rate
$msec
$nginx_version
$pid
$pipe
$proxy_protocol_addr
$proxy_protocol_port
$query_string
$realpath_root
$remote_addr
$remote_port
$remote_user
$request
$request_body
$request_body_file
$request_completion
$request_filename
$request_id
$request_length
$request_method
$request_time
$request_uri
$scheme
$sent_http_name
$sent_trailer_name
$server_addr
$server_name
$server_port
$server_protocol
$status
$tcpinfo_rtt
$tcpinfo_rttvar
$tcpinfo_snd_cwnd
$tcpinfo_rcv_space
$time_iso8601
$time_local
$uri
- 최대한 많은 로그를 수집하기 위해 오류로 인해 안되는 것을 빼고 작성한 로그 포맷
http {
log_format main escape=json '{'
'"http_user_agent":"$http_user_agent",'
'"http_cookie":"$http_cookie",'
'"arg_name":"$arg_name",'
'"args":"$args",'
'"body_bytes_sent":"$body_bytes_sent",'
'"bytes_sent":"$bytes_sent",'
'"connection":"$connection",'
'"connection_requests":"$connection_requests",'
'"content_length":"$content_length",'
'"content_type":"$content_type",'
'"cookie_name":"$cookie_name",'
'"document_root":"$document_root",'
'"document_uri":"$document_uri",'
'"host":"$host",'
'"hostname":"$hostname",'
'"http_name":"$http_name",'
'"https":"$https",'
'"is_args":"$is_args",'
'"limit_rate":"$limit_rate",'
'"msec":"$msec",'
'"nginx_version":"$nginx_version",'
'"pid":"$pid",'
'"pipe":"$pipe",'
'"proxy_protocol_addr":"$proxy_protocol_addr",'
'"proxy_protocol_port":"$proxy_protocol_port",'
'"query_string":"$query_string",'
'"realpath_root":"$realpath_root",'
'"remote_addr":"$remote_addr",'
'"remote_port":"$remote_port",'
'"remote_user":"$remote_user",'
'"request":"$request",'
'"request_body":"$request_body",'
'"request_body_file":"$request_body_file",'
'"request_completion":"$request_completion",'
'"request_filename":"$request_filename",'
'"request_id":"$request_id",'
'"request_length":"$request_length",'
'"request_method":"$request_method",'
'"request_time":"$request_time",'
'"request_uri":"$request_uri",'
'"scheme":"$scheme",'
'"sent_http_name":"$sent_http_name",'
'"server_addr":"$server_addr",'
'"server_name":"$server_name",'
'"server_port":"$server_port",'
'"server_protocol":"$server_protocol",'
'"status":"$status",'
'"tcpinfo_rtt":"$tcpinfo_rtt",'
'"tcpinfo_rttvar":"$tcpinfo_rttvar",'
'"tcpinfo_snd_cwnd":"$tcpinfo_snd_cwnd",'
'"tcpinfo_rcv_space":"$tcpinfo_rcv_space",'
'"time_iso8601":"$time_iso8601",'
'"time_local":"$time_local",'
'"uri":"$uri"'
'}';
- 로그 포맷 변수에 관한 자세한 설명
http://nginx.org/en/docs/http/ngx_http_core_module.html
Module ngx_http_core_module
Module ngx_http_core_module Directives Syntax: absolute_redirect on | off; Default: absolute_redirect on; Context: http, server, location This directive appeared in version 1.11.8. If disabled, redirects issued by nginx will be relative. See also server_na
nginx.org
- 로그 실시간으로 보기
sudo tail -f /var/log/nginx/access.log