python写的nginx切割日志脚本

#!/usr/bin/env pthon
#_*_coding=utf-8_*_
#python版本(nginx日志切割脚本)

import os
import datetime

#access.log路径
accesslogs_path = "/usr/local/nginx/logs/"
#昨天的日期
lastDate = datetime.date.today() - datetime.timedelta(days=1)
#备份路径
bak_path = "%s%s/%s/" % (accesslogs_path,lastDate.strftime(‘%Y‘),lastDate.strftime(‘%m‘))
#nginx日志
access_log = "%saccess.log" % (accesslogs_path)
#备份后日志
bak_log = "%s%s.log" % (bak_path,lastDate.strftime(‘%Y%m%d‘))

def bakup():
    if os.path.exists(bak_path):
        print "备份目录已存在。"
    else:
        print "备份目录不存在。"
        print "创建备份目录..."
        os.makedirs(bak_path)
    print "开始备份nginx日志..."
    os.rename(access_log,bak_log)
    os.system(‘kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`‘)

if __name__ == ‘__main__‘:
    bakup()
时间: 2024-11-10 12:59:04

python写的nginx切割日志脚本的相关文章

nginx切割日志脚本(python)

因为以前没有做nginx日志分割,有时候想看日志的时候总是发现有十几G的甚至上百G的日志文件,于是就想使用python写个nginx日志分割(当然你也可以使用shell来完成都是很简单) 需求:1.按照日分割nginx所有日志2.由于日志不需要随时可以查看,需要做归档(压缩.tar.gz)3.归档日志需要有过期时间和容量限制(分割日志需要做定期的删除,超过一定时间或者目录大小超过一定容量) 分析:按照需求,我们需要 备份前一天日志---->重新加载日志文件---->压缩日志文件---->

Nginx 切割日志脚本

非常的简单, 主要是留一个记号, 方便以后使用 #!/bin/bash access_path="/usr/local/nginx/logs/" logs_path="/webdata/logs/" mkdir -p ${logs_path}$(date '+%y_%m')/$(date '+%d')/ mv ${access_path}access.log ${logs_path}$(date '+%y_%m')/$(date '+%d')/access_$(da

Python写自动化之logging日志写入

日志写入是我们日常工作中常用到的功能,我们可以直接使用写文件的方式来以自己的方式写日志,另外,当我们在一个比较大的项目中,涉及到日志写入时,一般会使用logging模块来进行日志的写入,第一步,先写一个单例,创建一个logger对象: def _instance(): global logger if logger is None: logging.config.fileConfig(os.path.join(util.get_current(), "logger.conf")) lo

nginx 切割日志文件

一.利用crontab 切割nginx日志文件(linux平台下) cat nginx_log.sh #!/bin/bash # 零点执行该脚本 # Nginx 日志文件所在的目录 LOGS_PATH=/data/opt/nginx/logs ## 获取昨天的 yyyy-MM-dd YESTERDAY=$(date -d "yesterday" +%Y-%m-%d) # 移动文件 mv ${LOGS_PATH}/access.log ${LOGS_PATH}/access_${YEST

nginx切割日志

#!/bin/bash # # Filename:    nginxCutLog.sh # Author:      Qicheng # Website:     http://qicheng0211.blog.51cto.com/ # Description: 切割nginx日志 # Notes:       设置crontab,每天23点59分定时执行 # ROOT_UID=0 if [ "$UID" -ne "$ROOT_UID" ];then     ech

python写的简单发送邮件的脚本【转】

近来有些东西需要监控报警发邮件,然后在网上找了点材料,自己写了一个简单发送邮件的脚本,主要就是运用python的smtplib模块,分享给大家看一下: #!/usr/bin/env python # -*- coding: utf-8 -*- #导入smtplib和MIMEText import smtplib,sys from email.mime.text import MIMEText def send_mail(sub,content): ############# #要发给谁,这里发给

python写一个乘法表的脚本

学习脚本的时候经常会被问到会不会写一个99乘法表,现在就用python语句简单写一个乘法表 [[email protected] python_py]# cat while3.py i = 1 while (i<=9):        j=1        while(j<=i):               printj,"x",i,"=",j*i,"\t",               j=j+1        print&quo

使用python写一个监控mysql的脚本,在zabbix web上自定义模板

##先使用MySQLdb的接口关联数据库. [[email protected] python]# cat check_Mysql_custom.py #!/usr/local/bin/python '''author = chenmingle''' '''Description:get mysql status''' import os import sys try:     import MySQLdb as mysql except Exception, e:     print e   

python 写的一个url检测脚本,转成exe定时执行

#python2.7下编写.使用python abc.py py2exe 转成exe#所以需要安装py2exe包#filename:webmonitor.py import osimport sysimport pycurlimport StringIOimport jsonimport timeimport smtplibimport ConfigParserfrom email.mime.text import MIMETextfrom email.header import Header#