https://cloud.tencent.com/developer/article/1958304

$time_iso8601    生成格式:2021-09-18T15:16:35+08:00 $time_local          生成格式: 18/Sep/2021:15:12:13 +0800

网络流传的nginx access log分割都是写shell脚本然后做定时任务来分割日志,操作中自由度比较高,可以用正则按需要分割日志,但如果只是想按日期保存日志,可以用以下方法

server
{
……
#从系统时间中正则匹配出年月日
if ($time_iso8601 ~ "^(\d{4})-(\d{2})-(\d{2})") {
set $date $1$2$3;
} # 日期记录日志
access_log logs/$date.host.access.log;
}
复制

我的服务器 nginx version: nginx/1.14.1 测试该方法可用

更详细的日期变量设置,按需使用

if ($time_iso8601 ~ "^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})"){
set $year $1;
set $month $2;
set $day $3;
set $hour $4;
set $minutes $5;
set $seconds $6;
}
复制

据说还有Perl方法捕获日期变量,不过本人没有试过,有兴趣的可以试试

if ($time_iso8601 ~ "^(?<year>\d{4})-(?<month>\d{2})-(?<day>\d{2})") {

}
# 日期记录日志access_log logs/$year$month$day-host.access.log;
复制

配合定时任务删除n天前的日志

先创建 .sh脚本

cd ~vi clearLogs.sh
复制

添加内容

 #!/bin/bash find /logs/ -mtime +10 -name "*.log" -exec rm -rf {} \;
复制

说明:将/logs/目录下所有10天前带".log"的文件删除。 具体参数说明如下: find:linux的查找命令,用户查找指定条件的文件; /logs/:想要进行清理的任意目录; -mtime:标准语句写法; +10:查找10天前的文件,这里用数字代表天数; "*.log":希望查找的数据类型,"*.jpg"表示查找扩展名为jpg的所有文件,"*"表示查找所有文件,这个可以灵活运用,举一反三; -exec:固定写法; rm -rf:强制删除文件,包括目录; {} \; :固定写法,一对大括号+空格+\+;

#执行命令crontab -e #添加代码每天凌晨1点定时执行脚本00 01  * * * /root/clearLogs.sh

[转帖]Nginx access log 按日期保存记录的更多相关文章

  1. Nginx Access Log日志统计分析常用命令

    Nginx Access Log日志统计分析常用命令 IP相关统计 统计IP访问量 awk '{print $1}' access.log | sort -n | uniq | wc -l 查看某一时 ...

  2. awk技巧 nginx access.log

    1.1 介绍 awk其名称得自于它的创始人 Alfred Aho .Peter Weinberger 和 Brian Kernighan 姓氏的首个字母.实际上 AWK 的确拥有自己的语言: AWK ...

  3. nginx access.log 忽略favicon.ico訪问记录的方法

    favicon.ico 文件是浏览器收藏网址时显示的图标,当第一次訪问页面时.浏览器会自己主动发起请求获取页面的favicon.ico文件.当/favicon.ico文件不存在时,服务器会记录404日 ...

  4. 转 Nginx Access Log日志统计分析常用命令

    Nginx Access Log日志统计分析常用命令Nginx Access Log日志统计分析常用命令IP相关统计 统计IP访问量 awk '{print $1}' access.log | sor ...

  5. nginx access log logrotate配置

    /home/deployuser/deploy/nginx/temp/logs/home.access.log {   size 100M   rotate 100    nocompress   d ...

  6. 统计 nginx access.log

    awk '{print $1}' access22.log | sort | uniq -c | sort -nr -k1

  7. 分析nginx access log日志的命令

    统计访问最多的ip 1. tail -n 10000 xxaccess_log | cut -d " " -f 1 |sort|uniq -c|sort -rn|head -10 ...

  8. shell分析nginx access log日志

    统计访问最多的ip1. tail -n 10000 xxaccess_log | cut -d " " -f 1 |sort|uniq -c|sort -rn|head -10 | ...

  9. shell定时统计Nginx下access.log的PV并发送给API保存到数据库

    1,统计PV和IP 统计当天的PV(Page View) cat access.log | sed -n /`date "+%d\/%b\/%Y"`/p |wc -l 统计某一天的 ...

  10. nginx的access.log 和 error.log

    nginx 常用的配置文件有两种: access.log 和 error.log access.log 的作用是 记录用户所有的访问请求,不论状态码,包括200 ,404,500等请求,404,500 ...

随机推荐

  1. 微服务网关限流&鉴权-wei-fu-wu-wang-guan-xian-liu--jian-quan

    title: 微服务网关限流&鉴权 date: 2022-01-06 14:40:45.047 updated: 2022-01-06 14:40:45.047 url: https://ww ...

  2. Java 集合(三)ConcurrentHashMap

    一般来讲,通常使用的 HashMap 不是线程安全的,因为没有任何机制来保证每个操作的原子性.在 ConcurrentHashMap 出现之前,可以通过给 HashMap 的每个操作加上唯一的互斥锁来 ...

  3. vue3 + element-plus 的 upload + axios + django 文件上传并保存

    之前在网上搜了好多教程,一直没有找到合适自己的,要么只有前端部分没有后端,要么就是写的不是很明白.所以还得靠自己摸索出来后,来此记录一下整个过程. 其实就是不要用默认的 action,要手动实现上传方 ...

  4. 华为云弹性云服务器ECS搭建FTP服务实践

    摘要:在使用华为弹性云服务器ECS搭建FTP服务的时候,经常会遇到搭建完成后无法访问的问题.本篇通过演示windows IIS搭建FTP方法,讲解ftp主动模式.被动模式原理来说明无法访问的原因及解决 ...

  5. 十八般武艺玩转GaussDB(DWS)性能调优:Plan hint运用

    摘要:本文介绍GaussDB(DWS)另一种可以人工干预计划生成的功能--plan hint. 前言 数据库的使用者在书写SQL语句时,会根据自己已知的情况尽力写出性能很高的SQL语句.但是当需要写大 ...

  6. 实践丨GaussDB(DWS)资源管理排队原理与问题定位

    摘要:GaussDB(DWS)提供了资源管理功能,用户可以根据自身业务情况对资源进行划分,将资源按需划分成不同的资源池,不同资源池之间资源互相隔离. 本文分享自华为云社区<GaussDB(DWS ...

  7. 云小课|聊一聊DRS的数据过滤特性

    [本期推荐专题]在DevOps市场中,华为云DevCloud拔得头筹,看它如何助力企业面对商业环境瞬息万变快速响应. [摘要] 目前,DRS已支持其他云.本地IDC.ECS自建MySQL.SQL Se ...

  8. 带你了解TensorFlow pb模型常用处理方法

    摘要:TensorFlow 模型训练完成后,通常会通过frozen过程保存一个最终的pb模型. 本文分享自华为云社区<TensorFlow pb模型修改和优化>,作者:luchangli. ...

  9. 开心档之C++ 数据结构

    C++ 数据结构 C/C++ 数组允许定义可存储相同类型数据项的变量,但是结构是 C++ 中另一种用户自定义的可用的数据类型,它允许您存储不同类型的数据项. 结构用于表示一条记录,假设您想要跟踪图书馆 ...

  10. OpenFeign FormData

    服务端接口代码如下: /** * 上传数据+实体信息 */ @RequestMapping("/upload") public String doctorAnalysis(Http ...