• 幕客老师召集小伙伴
  • python自动化运维项目实战
  • nginx从入门到实战
  • 阿里云与Centos7实战

Nginx中日志格式format设置并且输出

Nginx的日志类型,主要有Access日志,和Error日志。

Access日志主要记录过来的请求情况,Error日志技术Nginx段遇到的一些错误,入upsteam超时,Nginx服务启动出错等等。

在Access日志中,我们需要规划好每个日志的记录方式及切割方式,所以有必要加深了解。

一、Access日志的日志类型

log_format Jmain '$remote_addr "$time_iso8601" $request_method "$uri" "$args" "$request_body" $status $body_bytes_sent $request_time "$http_user_agent" "$http_x_forwarded_for"

具体参数如下:

 
 
$remote_addr,$http_x_forwarded_for记录Http包头中的x_forwarded信息,remote_addr纪录时tcp的请求客户端的信息。
$request记录请求的URL和HTTP协议
$status记录请求状态
$body_bytes_sent发送给客户端的字节数,不包括响应头的大小;该变量与Apache模块mod_log_config里的“%B”参数兼容
$connection_requests当前通过一个连接获得的请求数量。
$http_referer记录从哪个页面链接访问过来的
$http_user_agent记录客户端浏览器相关信息
$request_length请求的长度(包括请求行,请求头和请求正文)。
$request_time请求处理时间,单位为秒,精度毫秒;从读入客户端的第一个字节开始,直到把最后一个字符发送给客户端后进行日志写入为止。
$time_iso8601 ISO8601标准格式下的本地时间。
$time_local通用日志格式下的本地时间。
$request_body记录Post过来的请求日志信息

 

配置形式的格式一般如下:

nginx.conf的配置

##
# Logging Settings
##
log_format Jmain '$remote_addr "$time_iso8601" $request_method "$uri" "$args" "$request_body" $status $body_bytes_sent $request_time "$http_user_agent" "$http_x_forwarded_for"';
error_log /data/logs/nginx/error/error.log;

 

server{

    server_name  xxx.iaskjob.com;

    access_log /data/logs/nginx/access/iaskjob_access.log Jmain;

}

 

Nginx中日志格式format设置并且输出

Pingbacks已打开。

引用地址

暂无评论

发表评论