`

windows下nginx日志分割实现

阅读更多

在windows下安装nginx后,由于nginx本身没有提供日志分割的功能配置,所以只能通过windows的计划任务来实现该功能,并需要配合写一个简单的分割用的批处理命令来用。

 

假设我的nginx安装在D:\nginx目录下,而相关应用的日志被配置为3个日志,分别为:

  • xxxxx.com.log  正常的应用访问日志
  • xxxxx.com_444.log 非法访问日志,在nginx中,444为特有的拒绝连接状态,所以设为444别名
  • xxxxx.com_res.log 静态资源访问日志

现在需要每天将日志分割到单独的目录下,并按年月日目录区分:

先写批准处理的bat脚本如下:

for /f "tokens=1 delims=/ " %%j in ("%date%") do set d1=%%j
for /f "tokens=2 delims=/ " %%j in ("%date%") do set d2=%%j
for /f "tokens=3 delims=/ " %%j in ("%date%") do set d3=%%j

set backupdir=d:\backup\%d1%\%d2%\%d3%

mkdir %backupdir%

move d:\ngins\logs\xxxxx.com*log %backupdir%

d:\ngins\nginx -s reload

 上面的命令先将date按/符号分割为年月日的3个字符串,并在D盘的backup目录下创建年\月\日的目录,然后将对应应用的所有匹配的访问日志都移动到新创建的目录下,最后重新载入nginx配置(相当于重启)。

 

注意:上面对%date%的分割,未必一定是/符号,我在不同的windows系统上见过不同的分隔符,有的表示为如2014/05/04,有的则表示为2014-05-04的格式,所以要视实际情况来使用对应的分隔符。

 

批处理写完后,可以先尝试执行下看看效果,建议以上所有路径都使用绝对路径,避免分配到计划任务的时候执行失败。

 

下面就是添加到系统的计划任务里面,这个就比较简单:

开始 - > 程序 -> 附件 -> 系统工具 -> 任务计划程序,添加任务,然后根据提示一步步完成操作就可以了,添加完成后可以右击任务运行看看效果,确定没有问题后,就可以等第二天看结果了。

分享到:
评论

相关推荐

    windows 下 nginx 日志切割

    windows 下nginx 日志切割 结合windows任务计划,实现每天备份日志,并reopen nginx

    Windows系统nginx日志分割批处理脚本

    : 为限制 Nginx日志文件大小增加,文件过大,导致无法收缩日志,在配置好的nginx的安装目录下,可以采用批处理文件对日志,根据实际需要的时间进行自动切割,本脚本以天为单位进行保存。对于日志备份功能,因存储...

    windows-nginx-log 日志分割

    加到计划任务里,每天自动分割 nginx日志,低分白送,windows版本批处理文件哦

    可自动按天分割日志的nginx (根据nginx源代码修改得来)

    将在 logs目录下生成类似 2014-01-21.access.log 的log文件,这个日期会根据服务器的时间变化) 配置可参照 nginx目录下的 conf/nginx.conf 文件进行log配置 源码留给有特殊需要的朋友自己编译。此源码就是修改后的...

    Nginx安装为Windows服务运行并进行日志分割.docx

    nginx日常代理应用所遇到的问题,防止nginx日志过大影响服务的运行

    nginx-1.19.9_win服务启动_分割日志(1).rar

    该压缩包文件“nginx-1.19.9_win服务启动_分割日志(1).rar”主要关注的是在Windows环境下使用Nginx 1.19.9版本的配置和管理,特别是如何启动Nginx作为服务以及实现日志分割功能。Nginx是一款高性能的HTTP和反向代理...

    实现自动定期删除Nginx日志的方法

    本文将详细介绍如何实现自动定期删除Nginx日志,以保持系统的高效运行。 首先,我们需要理解Nginx日志的基本结构。Nginx默认有两个主要的日志文件:访问日志(access.log)和错误日志(error.log)。访问日志记录了...

    nginx日志按时间切割.zip

    总之,`nginx日志按时间切割.zip`提供的批处理脚本为Windows环境下Nginx日志管理提供了一种基础解决方案。通过定期运行此脚本,可以有效地管理和跟踪Nginx服务器的日志信息,这对于日常运维和问题排查具有重要意义。...

    使用awstats分析nginx日志

    这里,`$host`会被替换为当前请求的主机名或IP地址,从而实现基于主机的日志分割。 此外,还可以结合cron定时任务或其他脚本实现更高级的日志轮换策略,例如按天或按周自动归档旧日志文件。 #### 安装与配置...

    nginx windows usage(翻译).pdf

    - 日志分割不便。 - **解决方案**: - 通过编写批处理文件或Python脚本来定期分割日志文件。 - 关闭不必要的日志记录以减轻磁盘压力。 #### 结论 虽然Nginx Windows版提供了一个在Windows环境下运行Web服务器的...

    Nginx For Windows.zip

    通过配置,可以调整日志级别、格式,甚至实现日志分割和轮转。对于Windows用户,这些日志文件通常位于Nginx安装目录下。 **五、安全和优化** 为了提升安全性,Nginx可以配置SSL/TLS支持,实现HTTPS加密通信。同时...

    集成nginx-rtmp插件的nginx

    `Readme nginx-win version.txt`和`FAQ nginx-win version.txt`可能包含关于Nginx在Windows环境下运行的说明和常见问题解答。`logs`目录用于存放日志文件,帮助监控和调试系统。`temp`目录通常用于临时文件存储。 ...

    浅析python 定时拆分备份 nginx 日志的方法

    标题中的“浅析python 定时拆分备份 nginx 日志的方法”是指使用Python脚本来实现...这个方法解决了Nginx日志管理和备份的问题,通过自动化处理降低了手动操作的负担,同时保持了日志的组织有序,方便后续分析和查询。

    Windows nginx server及相关使用说明.zip

    "Windows nginx server及相关使用说明"文档应该详细介绍了在Windows环境下安装、配置和管理Nginx服务器的全过程,包括下载安装包、配置环境变量、启动和停止服务、日志查看等操作。同时,它可能还涵盖了如何处理常见...

    业界最有价值Nginx反向代理实战博文荟萃

    此外,Nginx的日志管理也是优化的重要环节,推荐按照天进行日志分割,这样便于日志的管理和分析。 对于高可用性架构的构建,Nginx与Keepalived的结合使用是一种常见的解决方案,可以实现主辅切换,保证服务的连续性...

    log_format为Nginx设置日志格式1

    例如,可以使用`logrotate`这样的工具来按日期或大小分割日志文件,以避免单个日志文件过大导致的问题。 总之,通过Nginx的`log_format`和`access_log`指令,我们可以灵活地控制服务器日志的格式和存储,从而更好地...

    nginx+rtmp_win.zip

    在Windows环境下,`nginx+rtmp_win.zip`提供了完整的Nginx服务器与RTMP模块的预编译版本,方便用户快速搭建流媒体服务器。下载并解压此压缩包后,无需复杂的编译步骤,可以直接运行。 【配置文件路径】 配置文件...

    nginx操作手册

    3. **日志切割**:可以结合外部工具(如 logrotate)定期分割和归档日志。 ### 六、Nginx 功能扩展 1. **模块化设计**:Nginx 支持多种第三方模块,如限流、缓存、URL重写等。 2. **缓存机制**:通过 `proxy_...

    cronolog-1.6.2_0.zip

    日志分割是将日志文件按照特定时间间隔(如每日、每小时)进行切割,以防止单个日志文件过大,影响系统性能。cronolog 正是执行这一任务的工具,它能够根据时间戳动态重定向标准输出,将不同时间段的日志内容分别...

Global site tag (gtag.js) - Google Analytics