nginx 日志相关指令主要有两条,一条是log_format,用来设置日志格式,另外一条是access_log,用来指定日志文件的存放路径、格式和缓存大小,通俗的理解就是先用log_format来定义自己想用的日志格式,然后在用access_log定义虚拟主机时或全局日志时在把定义的log_format 跟在后面;其实这个在默认的配置文件中就有的,打开便可以了。如下:
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;
下面说说这些日志中的变量的含义,其实看名称也能猜出个七八分了。
$remote_addr / $http_x_forwarded_for 用以记录客户端的ip地址;
$remote_user 用来记录客户端用户名称;
$time_local 用来记录访问时间与时区;
$request 用来记录请求的url与http协议;
$status 用来记录请求状态,成功是200;
$body_bytes_sent 记录发送给客户端文件主体内容大小;
$http_referer 用来记录从那个页面链接访问过来的;
$http_user_agent 记录客户端浏览器的相关信息;
通常web服务器放在反向代理的后面,这样就不能获取到客户的IP地址了,通过$remote_addr拿到的IP地址是反向代理服务器的iP地址。反向代理服务器在转发请求的http头信息中,可以增加x_forwarded_for信息,用以记录原有客户端的IP地址和原来客户端的请求的服务器地址;而事实上在新版本的nginx中,确实默认的是有这么一项的。 x_forwarded_for
用access_log指令日志文件存放路径
用了log_format 指令设置了日志格式之后,需要用access_log指令指定日志文件的存放路径。如下面的例子:
#access_log logs/access.log main;
如果不想启用日志,则使用:
access_log off ;
在定义日志目录中要注意的是,nginx进程设置的用户和组必须有对该路径创建文件的权限,假设nginx的usr指令设置的用户名和用户组都是www,而logs 目录的用户名和组是root,那么日志文件将无法被创建。
http://blog.sina.com.cn/s/blog_9bd573450101iqdc.html
分享到:
相关推荐
`access.log.zip`是一个压缩包,里面包含了Nginx服务器生成的访问日志记录,接下来我们将深入探讨Nginx日志的结构、用途及分析方法。 Nginx的默认日志格式(也称为`combined`格式)如下: ``` $remote_addr - $...
"日志文件10000_access.log" 标题表明这是一个访问日志文件,通常与Web服务器有关,记录了用户对服务器的访问详情。"描述"提到提取了其中的10000条数据,这可能是因为原始日志文件过于庞大,为了便于分析,进行了...
"access.log"文件是Web服务器(如Apache或Nginx)记录所有HTTP请求的标准日志文件,它包含了用户访问网站时的各种详细信息。通过分析这些日志数据,我们可以获取到丰富的用户行为信息,帮助优化网站性能,提升用户...
将在 logs目录下生成类似 2014-01-21.access.log 的log文件,这个日期会根据服务器的时间变化) 配置可参照 nginx目录下的 conf/nginx.conf 文件进行log配置 源码留给有特殊需要的朋友自己编译。此源码就是修改后的...
本文实现的功能是在吗每天凌晨00:00把前一天的Nginx日志access.log重命名为access-xxxx-xx-xx.log格式,例如:access-2016-10-01.log,下面话不多说了,来看看详细的实现方法吧。 实现方法 脚本 vim /opt/nginx/...
在Nginx服务器中,Access Log是记录客户端请求的重要日志,它包含了丰富的信息,可用于分析用户行为、优化网站性能和排查问题。了解和掌握Access Log的分析与配置对于任何Web服务的运维人员来说都至关重要。 1. **...
Nginx日志描述 通过访问日志,你可以得到用户地域来源、跳转来源、使用终端、某个URL访问量等相关信息;通过错误日志,你可以得到系统某个服务或server的性能瓶颈等。因此,将日志好好利用,你可以得到很多有价值的...
默认情况下,Nginx的主要访问日志文件通常位于`/var/log/nginx/access.log`,采用combined日志格式,内容包括客户端IP、时间戳、请求方法、请求URL、HTTP状态码、请求大小、用户代理等信息。例如: ``` 127.0.0.1 -...
为了确保服务的正常运行,需要监控Nginx的日志文件,如`error.log`和`access.log`,以追踪错误和访问信息。同时,可以使用Nginx提供的`status`模块来查看服务器状态,包括连接数、带宽使用等。 **总结** Nginx 1.7...
Nginx的日志功能强大,可以通过`access_log`和`error_log`指令记录不同级别的信息。配合第三方工具(如Logstash、ELK Stack)进行日志分析和监控,有助于识别潜在问题并进行性能优化。 ### 总结 Nginx 1.25.3作为...
本文将深入探讨Nginx的日志配置,包括访问日志(access_log)和错误日志(error_log),以及如何定制日志格式和管理日志文件。 首先,Nginx的主配置文件通常位于`/etc/nginx/nginx.conf`,通过命令`nginx -t`可以检查...
本文将详细探讨如何使用shell脚本定时统计Nginx服务器的access.log文件中的页面浏览量(PV),并将这些统计结果通过API发送到服务器端进行保存。这种方法有助于收集和分析网站的访问数据,为优化网站性能提供依据。 ...
Nginx 的 error_log 和 Access_log 分析是 Nginx 配置和优化的核心组件,需要深入了解 Nginx 的配置机制和日志机制。只有通过对 Nginx 的日志系统的深入了解和分析,才能更好地优化和调整 Nginx 服务器,提高服务器...
Nginx默认提供两种日志格式:`access_log`(访问日志)和`error_log`(错误日志)。访问日志记录了客户端的请求信息,包括请求时间、请求的URL、响应状态码等;错误日志则记录了服务器运行过程中遇到的问题。Nginx...
在IT行业中,日志分析是一项至关重要的任务...总的来说,通过使用Java的多线程能力和自定义规则,我们可以构建一个高效且灵活的Nginx Access Log分析器,超越传统的AWK解决方案,为IT运维人员提供强大的日志处理工具。
这个demo是一个批量生成nginx日志文件的工具类,当然跟真实的稍微有点区别,你可以改进一下,使他更完美,里面包含一个txt文件,你可以看到效果
nginx服务器访问日志,记录网站运营中比如空间的运营情况,被访问请求的记录。通过网站日志可以清楚的得知用户在什么IP、什么时间、用什么操作系统、什么浏览器、什么分辨率显示器的情况下访问了你网站的哪个页面,...
cp /usr/local/nginx/logs/access.log /var/log/nginx/access/access-$(date -d "yesterday" +"%Y%m%d").log # 复制前一天的访问日志,并以日期命名 cat /dev/null > /usr/local/nginx/logs/access.log # 清空当前的...
cp /usr/local/nginx/logs/access.log /var/log/nginx/access/access-$(date -d "yesterday" + "%Y%m%d").log # 复制前一天的访问日志文件到指定位置 cat /dev/null > /usr/local/nginx/logs/access.log # 清空...