nginx日志配置,以及日志轮询

article/2025/5/15 11:11:12

一、为nginx配置错误日志

Nginx错误日志是调试nginx的重要手段,属于核心功能模块的参数(ngx_core_module)该参数名字为err_log,是放在Main区块中全局配置

err_log的语法格式以及参数语法说明如下

err_log   file              level(级别)

关键字           日志文件              错误日志级别

其中关键字err_log不能改变

 1 1、在配置文件中写入error_log logs/error.log error
 2 [root@A conf]# Vim nginx.conf
 3 worker_processes  1;
 4 error_log logs/error.log error;   →这里是写入的默认log
 5 events {
 6     worker_connections  1024;
 7 }
 8 http {
 9     include       mime.types;
10     default_type  application/octet-stream;
11     sendfile        on;
12     keepalive_timeout  65;
13     #nginx vhosts config
14     include extra/www.conf;
15     include extra/bbs.conf;
16     include extra/blog.conf;
17     include extra/status.conf;
18 }
19 2、检查语法,并且重启
20 3、查看日志,如果日志太多可以清空日志然后查看
21 [root@A conf]# cat ../error.log   →查看nginx的错误日志文件
22 
23 [root@A conf]# > ../logs/error.log   →这个是日志太多然后看不清的时候清空日志
24 [root@A conf]# cat ../logs/error.log  →之后查看日志

二、访问日志作用以及配置

所有的web软件都有这样的功能,会把每个用户访问网站的日志信息记录到指定的日志文件里面,供网站提供这分析用户浏览行为等,如百度。此功能由nginx_http_log_module模块负责,对应的官方地址:

http://nginx.org/en/docs/http/ngx_http_log_module.html

Nginx 访问日志参数

log_format   用来定义记录日志的格式(可以定义多种日志格式,取不同名字即可)

access_log   用来指定日志文件的路径及使用的何种日志格式记录日志

用法如下:

1、取出日志参数格式

下面的log_format格式,在vim nginx_default里面21到23行

log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '

                      '$status $body_bytes_sent "$http_referer" '

                      '"$http_user_agent" "$http_x_forwarded_for"';

下面是定义参数

$http_x_forwarded_for  代理接收客户端信息

 

2、把参数放到配置的nginx.conf里面
Vim nginx.confworker_processes  1;
error_log logs/error.log error;
events {worker_connections  1024;
}
http {include       mime.types;default_type  application/octet-stream;sendfile        on;keepalive_timeout  65;log_format  main  '$remote_addr - $remote_user [$time_local] "$request" ' →这里放参数'$status $body_bytes_sent "$http_referer" '   '"$http_user_agent" "$http_x_forwarded_for"';        →放参数#nginx vhosts configinclude extra/www.conf;include extra/bbs.conf;include extra/blog.conf;include extra/status.conf;
}

配置访问日志如下:

 

默认配置:access_log logs/access.log cimbined;  

放置位置:http,server,location,if in location limit_except

access_log 访问位置,这里一般在虚拟主机里面

logs/access.log 记录文件

cimbined; 以什么样的格式记录

1、    写到虚拟主机里面,这里先写到www.conf里面[root@A conf]# vim extra/www.conf
server {listen       80;server_name  www.cnblog.co pyrene;location / {root   html/www;index  index.html index.htm;}access_log logs/access_www.log main;    -→放到location外面,logs是安装目录,后面是名字,以main的方式,这样才你能和log_format 结合使用}
2、    检查语法/application/nginx/sbin/nginx –t,重启
3、    查看日志变化用 tail -f /application/nginx/logs/access_www.log   这里的是上面起名字防止的位置

1、  浏览器访问绑定的ip地址就会出现如下:并且和access_log对比

 

定义的格式

log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '

                      '$status $body_bytes_sent "$http_referer" '

                      '"$http_user_agent" "$http_x_forwarded_for"';

里面有参数referer,可以显示你从那个页面过来的是什么手机,什么系统等等

真实的格式

192.168.197.1 - - [17/Dec/2

016:06:42:14 +0800] "GET /favicon.ico HTTP/1.1" 404 570 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Maxthon/5.0.2.200 Chrome/47.0.2526.73 Safari/537.36" "-"

详细说明信息:

上面的还可以优化,如下

三、日志轮询

nginx中的日志轮询切割一般用cron+脚本

方法如下:

1、首先写入脚本

[root@oldboy logs]# mkdir /server/scripts -p
[root@oldboy logs]# cd /server/scripts/
写脚本之前先创建脚本存放目录
[root@oldboy scripts]# vim cut_nginx_log.sh 
#!/bin/bash
cd /application/nginx/logs
#这里如果有博客的log那就把log在这里mv
/bin/mv access_www.log  www_access_$(date +%F -d '-1day').log
/application/nginx/sbin/nginx -s reload
#下面可以把这个推送到备份服务器然后删除七天之前的

2、执行 /bin/sh /server/scripts/cut_nginx_log.sh

3、查看是否生成log

[root@oldboy logs]# ls
access.log access_www.log error.log nginx.pid www_access_2017-03-03.log

4、定时任务

[root@oldboy logs]# crontab -l
#time sync by pyrene 2017-1-16
*/5 * * * * /usr/sbin/ntpdate time.nist.gov >/dev/null 2>&1
# nginx acess_log
00 * * * * /bin/sh /server/scripts/cut_nginx_log.sh >/dev/null 2>&1

转载于:https://www.cnblogs.com/pyrene/p/6502132.html


http://chatgpt.dhexx.cn/article/bceDoqF5.shtml

相关文章

nginx配置日志记录问题

去掉nginx.conf文件里面的llog_format main注释并修改为如下 log_format main $remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent" "$http_x_forwarded_for"|&quo…

nginx服务器网站日志,nginx网站日志配置

nginx网站日志配置 [2020-09-10 10:47:43] 简介: 建站服务器 1、日志介绍nginx有两种日志,一种是访问日志,一种是错误日志。访问日志中记录的是客户端对服务器的所有请求。错误日志中记录的 建站服务器 ELK系统在安装完成后需要处理相关的日志文件&…

Linux Nginx日志——Nginx日志配置 access_log error_log rewrite_log 日志轮转

1、Nginx 日志介绍 Nginx 每个级别的配置都可以有独立的访问日志, 所需日志模块 ngx_http_log_module 的支持,日志格式通过 log_format 命令来定义,日志对于统计和排错是有利的。 nginx 日志相关的配置包括 access_log、rewrite_log、error_log# 设置访…

【Nginx 日志配置】【访问日志log_format】【错误日志error_log 指令】【Nginx的日志轮转】

文章目录 Nginx 日志配置log_format 指令中常用的一些变量:访问日志 案例可以配置段:http, stream, server, location作用域。error_log 指令 错误访问日志 级别rewrite_log 指令 用户跳转日志 一般不用配置流量控制相关功能配置日志记录 Nginx 日志配置…

关于nginx日志配置指令介绍

本文主要介绍了nginx日志配置指令详解,nginx有一个非常灵活的日志记录模式,每个级别的配置可以有各自独立的访问日志,需要的朋友可以参考下 日志对于统计排错来说非常有利的。本文总结了nginx日志相关的配置如access_log、log_format、open_log_file_cache、log_not_found、lo…

宝塔自定义nginx访问日志配置

nginx日志自定义配置 问题 有时nginx默认的日志满足不了需求,比如网站绑定了多个域名,想知道用于访问的是具体域名,这时候就需要自定义nginx日志了。 nginx 中access log 记录了用户访问的页面以及用户浏览器、ip和其他的访问信息 log_for…

Nginx日志配置、错误界面配置、流量控制 第九天

目录 nginx日志配置 nginx日志介绍 access.log error.log open_log_file_cache rewrite.log nginx的日志轮转 nginx错误界面配置 nginx流量控制 nginx如何限流 配置基本限流 nginx流量限制(高级) 流量控制相关功能 nginx日志配置 nginx日志…

运维配置:Nginx日志配置详解

Nginx日志配置详解 前言 Nginx日志对于统计、系统服务排错很有用。Nginx日志主要分为两种:access_log(访问日志)和error_log(错误日志)。通过访问日志我们可以得到用户的IP地址、浏览器的信息,请求的处理时间等信息。错误日志记录了访问出错的信息&…

nginx日志[配置解释]

经常使用nginx,但是对nginx中的日志配置了解的不多,最近简单的学习了一下,在此简略的记录下。 nginx基础配置如下: user nginx; worker_processes auto;error_log /var/log/nginx/error.log notice; pid /var/run/ngi…

后端实践:Nginx日志配置(超详细)

前言 Nginx日志对于统计、系统服务排错很有用。 Nginx日志主要分为两种:access_log(访问日志)和error_log(错误日志)。通过访问日志我们可以得到用户的IP地址、浏览器的信息,请求的处理时间等信息。错误日志记录了访问出错的信息,可以帮助我…

Linux下玩转nginx系列(三)---nginx日志配置文件说明

nginx日志共三个参数。 access_log: 定义日志的路径及格式。 log_format: 定义日志的模板。 open_log_file_cache: 定义日志文件缓存。 nginx access日志配置 access_log日志配置 access_log用来定义日志级别,日志位置。语法如下: 日志级别&#x…

Linux中级实战专题篇三:nginx服务(日志介绍,作用域,格式定义,流量控制,访问控制模块,用户信任登录)

Nginx 日志配置 1、Nginx 日志介绍 Nginx 有一个非常灵活的日志记录模式,每个级别的配置可以有各自独立的访问日志, 所需日志模块 ngx_http_log_module 的支持,日志格式通过 log_format 命令来定义,日志对于统计和排错是非常有利的,下面总结…

英媒:知名色情网站约80万名用户账号遭曝光

英媒称,色情网站Brazzers约80万登记用户的资料遭曝光。黑客从与网站有关的论坛中窃取这些数据。 英国广播公司网站9月7日报道,Brazzersforum是给Brazzers用户讨论影片内容和演员的论坛,很多人看来在两个网站上使用相同的登录名称和密码&#…

黑客团体Anonymous宣称已经攻陷40家儿童色情网站

Anonymous从一成立以来就连续攻击企业和联邦政府的网站,他们的大部分攻击行动公然违法,但事实上这一组织向来以自己的价值观行事,例如他们对儿童色情网站深恶痛绝,在攻击上述网站的同时,自愿扮演起正义维护者的角色。 …

一个emoji表情包处理工具类

一个emoji表情包处理工具类 参考业务场景解决方案方案一(mysql字符集)方案二(emoji表情包转码) 尊重他人成果、转载请注明出处 参考 https://github.com/vdurmont/emoji-java 业务场景 在常规如APP推送、BBS、论坛等类型的业务系…

有趣的表情包购物网站

首页 一个轮播图 首页 换肤 产品页 一个放大镜 我的账户界面 产品信息界面 一个打星小程序 可增删 以及删除的购物车界面

怎么自己制作动图表情包?在线gif生成的操作步骤

gif表情包在我们平时的生活里斗图的时候经常会用到,那么如何用图片制作gif(https://www.gif.cn)表情包呢?今天就分享一个在线gif生成的简单方法,利用gif制作工具将图片转gif动图,下面是详细的操作步骤。 打…

表情符号(emoji)大全,只此一文便够了

本文由 大侠(AhcaoZhu)原创,转载请声明。 链接: https://blog.csdn.net/Ahcao2008 表情符号(emoji)大全、只此一文便够了 摘要集中展示笑脸和动物人庆贺和物品食品和物交通和地点符号 符号表smileys_and_peopleanimals_and_naturefood_and_dr…

热门聊天表情包怎么找?怎么制作?多平台表情合集,没有找不到的表情包!搞笑-金馆长-张家辉-卡通-二次元-gif等表情大全

去年的时候我做了一个表情包的小程序:i表情助手。 第一个版本做的比较简陋,一是表情图片资源比较少,二是需要用户填写文案制作,总的来说还是不够好用,所以一直没有进行推广。 过完年放完假回来,我决定好好…

22、实现发送文字、表情包

实现发送文字、表情包 一、 发送原理 二、 前端处理核心方法三、 后端逻辑处理函数 func dispatch(data[]byte)四、对端接收到消息后处理函数五、表情包简单逻辑六、发送图片流程七、 发送语音八、 发送视频测试 实现发送文字、表情包 一、 发送原理前端user1拼接好数据对象 …