Bootstrap

Ngnix的http块自定义服务日志,access.log和error.log,log_format指定日志输出格式设置

Ngnix默认的日志一般有两种,access.log和error.log

图片

access.log:用来记录用户所有的访问请求

error.log:记录nginx本身运行时的错误信息,不会记录用户的访问请求。

Nginx服务器支持对服务日志的格式、大小、输出等进行设置,需要使 用到两个指令,分别是access_log和log_format指令。

查询access.log的相关命令,可以使用命令进行查询

tail -f /usr/local/nginx/logs/access.log

图片

可以重新刷新一下,访问一下Ngnix

图片

此时有一个访问日志的信息被记录到了access.log当中了

查看相关属性,这里的path是用来设置对应的日志文件

图片

format是用来设置输出日志的格式是什么,buffer是用来指定日志文件的大小,access.log可以设置在http,server,location三大块中

图片

如何用:

第一步:

vim ../conf/nginx.conf打开对应的配置文件

图片

注释中有,access_log 后面的带的logs/my.logs 配置的是path路径

图片

修改完之后,检验语法错误,重启ngnix配置

图片

指定为其他路径之后,再次访问,就不会再输出相应信息了

图片

cd ../logs/        //进入到日志目录之后

ll 此时本地文件就会多了一个之前配置的文件 my.log

使用 tail -f my.log查看对应的日志信息,此时在my.log文件中可以检验访问对应的日志信息

图片

log_format:用来指定日志的输出格式。

log_format name [escape=default|json|none] string....;

log_format name中要跟accrss_log path[format]中path的format相同

图片

这里的default的意思是输出字符串的意思,需要注意的是log_format只能在http块中进行配置

图片

vim可以使用 Ctrl + C跳出文件

图片

在http中使用log_format myformat '======> xxxxxx' 这里myformat就是格式的名称,同时要将myformat添加在accress.log logs/my.log后面,这两者都要添加格式

图片

之后切换到sbin文件下

cd ../sbin/

./nginx -t          //检查语法

./nginx -s reload    //重载nginx配置

tail -f ../logs/my.log   // 查看文件
此时输出就是我们自己设置的格式的文件了

图片

输出格式的内容,Mozille中的内容,与浏览器中F12的User-Agent是相同的

图片

如果想要打印537.36可以在log_format myformat文件中使用"$http_user_agent"进行输出

这一次输出格式之后,内容添加上了

图片

;