NGINX日志配置总结

clipboard.png

前言

原本准备讲解nginx和apache的日志的,可是我的不太推荐apache(纯属我的爱好),这里就不介绍apache的日志了。nginx

做为一名程序员,比码代码还重要那么一点点的东西就是日志的分析和查询。下面列出常见日志及设置方法。程序员

配置文件

nginx分access_log和error_log两种日志

设置须要在nginx.conf中,默认经过源码包编译安装nginx目录应在apache

/usr/local/nginx

目录下,若是你经过yum或者其余方式安装,不清楚或不知道nginx具体安装目录,能够使用vim

find / -name nginx.conf

or浏览器

nginx -V | grep prefix
-------------
nginx version: nginx/1.13.9
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC)
built with OpenSSL 1.0.2k-fips  26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --with-http_ssl_module

开启访问日志

若是是你源码包默认安装的,打开路径以下app

vim /usr/local/nginx/nginx.conf

找到以下内容ui

http {
    include       mime.types;
    default_type  application/octet-stream;

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

    access_log  logs/access.log  main;
    
    ...
}

将log_format到access_log的注释打开便可,log_format可定义nginx的日志规格。spa

log_format默认规格参数表

名称 注解
$remote_addr 客户端/用户的IP地址
$time_local 访问时间
$request 请求方式 + 请求地址
$status 请求状态码 与HTTP状态码一致
$body_bytes_sent 请求的地址大小 以bytes格式计算
$http_referer 请求来源,从什么地方访问的
$http_user_agent 用户信息(浏览器信息)
$http_x_forwarded_for 转发IP地址

开启错误日志

若是是你源码包默认安装的,打开路径以下日志

vim /usr/local/nginx/nginx.conf

找到以下内容code

error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

将注解删除便可,你能够将不一样的错误类型分开存储如

error_log logs/error.log notice;

notice既为错误类型,不写则是所有。

致谢

感谢你看到这里,日志操做与分析的相关文章后面我还会写一些,但愿能够帮助到你。谢谢

代码多变,初心不变

相关文章
相关标签/搜索