#!/usr/bin/python import time import os import commands path = ['/var/log/nginx/', 'access.log'] (num,nginxpid_str) = commands.getstatusoutput("/usr/bin/ps aux|grep nginx|grep nginx|awk '/master/{print$2}'") nginxpid=int(nginxpid_str.split("…
Python切割nginx日志_小组_ThinkSAAS Python切割nginx日志…
Linux下添加shell脚本使得nginx日志每天定时切割压缩一 简介 对于nginx的日志文件,特别是access日志,如果我们不做任何处理的话,最后这个文件将会变得非常庞大 这时,无论是出现异常时查日志,还是使用"GoAccess"等工具对日志进行分析都将会变得非常麻烦.因此,每天定时对nginx日志进行切割压缩就非常有必要了 二 实现 我的实现思路是每天晚上接近12点时定时执行脚本.其脚本内容就是将当前的nginx日志先按照当天日期进行重命名接着进行压缩,最后是新建空白的ngi…
本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb 这几天自己看了下博客的nginx日志,发现日志文件发现越来越大. 因为nginx自己不会对日志文件进行切割,所以打算通过其他方式进行切割,而且为了后续能对nginx日志文件里面记录的数据进行分析,所以打算按照天对其进行切割. PS:本篇文章所以的操作是在centos6.5 OS 64bit上进行. 切割nginx日志,我们可以通过两种不同的方式进行,分别是:通过logrotate和通过…
Linux yum的配置 , python环境管理, nginx搭建简单学习 一丶配置yum的数据仓库 ### yum 工具, 方便,自行解决软件之间的依赖关系. # 配置yum源仓库 (可以使用,清华源,阿里源) # 1.配置第一个仓库,里面有大量系统常用软件 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo # 2.还得配置第二个仓库,携带大量第三方软件(nginx,r…
用linux自带的计划任务切割nginx日志,每天0点执行 #!/bin/bash #GuoYabin nginxpid=`/bin/ps aux|grep nginx |awk /master/'{print $2}'` accesslog=`/usr/sbin/lsof -p $nginxpid |awk /access.log/'{print $9}'` LOGS_PATH=`/usr/bin/dirname $accesslog` YESTERDAY=$(date -d "yesterd…
Linux系统下升级Python版本步骤(suse系统) http://blog.csdn.net/lifengling1234/article/details/53536493…
自动每天定时切割Nginx日志的脚本,很方便很好用,推荐给大家使用.本脚本也是参考了张宴老师的文章,再次感谢张宴老师.1.创建脚本/usr/local/nginx/sbin/cut_nginx_log.shvi /usr/local/nginx/sbin/cut_nginx_log.sh输入以下内容: #!/bin/bash # This script run at : # The Nginx logs path #edit: www.jbxue.com logs_path=”/home/www…
#按小时或天切割Nginx日志到备份文件夹 LOGS_PATH=/home/www/logs/thc SAVE_PATH=/home/www/logs/thc YESTERDAY=$(date -d yesterday +"%Y%m%d%H") mv ${LOGS_PATH}/access.log ${SAVE_PATH}/www/access_${YESTERDAY}.log mv ${LOGS_PATH}/error.log ${SAVE_PATH}/www/error_${YES…
shell按日期自动切割nginx日志脚本 参考:自学it网 http://www.zixue.it/. #nginx日志切割脚本 #author:ce #!/bin/bash #设置日志文件存放目录 logs_path="/usr/local/nginx/logs/" #设置pid文件 pid_path="/usr/local/nginx/nginx.pid" #重命名日志文件 mv ${logs_path}access.log ${logs_path}acces…
前言    系统定制在前面的博文中我们就有谈到过了,不过那个裁减制作有简单了点,只是能让系统跑起来而,没有太多的功能,也没的用户登录入口,而这里我们将详细和深入的来谈谈Linux系统的详细定制过程和实现用户例如.远程登录和Nginx安装过程.一步一步从头开始定制属于我们自己的系统. 正文    首先我们先来简单的介绍一下我们这里定制属于自己的Linux系统的基本元素,其中一些相关的信息也可以参考我前面写过的博文    一个定制的linux内核+一个定制的busybox就可以定制一个小型的Linu…
1 配置 使用系统自带的logrorate来切个nginx日志,位于/usr/sbin/logrotate 假设服务器上有两个网站的nginx配置分别如下: 去除其它配置信息,只保留了日志相关 A网站 ... access_log /data/logs/a.com/access.log; error_log /data/logs/a.com/error.log; ... B网站 ... access_log /data/logs/b.com/access.log; error_log /data…
最近在学习python,写了个脚本分析nginx日志,练练手.写得比较粗糙,但基本功能可以实现. 脚本功能:查找出当天访问次数前十位的IP,并获取该IP来源,并将分析结果发送邮件到指定邮箱. 实现前两项功能的脚本内容如下: #!/usr/bin/env python # coding:utf-8 # date:2015-12-10 # author:eivll0m import urllib import json url = 'http://ip.taobao.com/service/getI…
“工欲善其事,必先利其器”,本文介绍 Python环境的安装和 Python的集成开发环境(IDE) PyCharn的安装.   一.Python安装( Windows.Mac和 Linux) 当前主流的 Python版本为2x和3x.由于 Python2第三方库更多(很多库没有向Python3转移),企业普遍用 Python2.如果作为学习和研究的话,建议使用 Python3,因为它是未来的发展方向.所以上海尚学堂Python培训课程选择 Python3的环境.  1. Windows中安装 …
# 公司网站反映很慢,可能是一些页面的访问方法或者页面引起,通过程序统计nginx访问日志的页面和具体的action方法访问次数以及平均响应时间可以为程序开发的同事提供参考定位具体的代码 # 默认的nginx日志 log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http…
将python程序放在其他linux服务器中执行,通常linux服务器中默认安装python2.6,很多情况下需要升级为2.7  且要安装程序中需要的第三方模块,配置较为麻烦,所以通过在本地linux环境中打包python程序,然后在其他linux服务器中直接执行打包后的文件,可以不依赖于python环境. 使用pyinstaller 将python源文件打包成二进制文件,然后./二进制文件即可.前提是python源文件在本地linux环境能够执行成功,然后再打包. 下面是打包过程中遇到的问题及…
知识点: 1)数组 数组是用来存储一系列值的变量,可通过索引来访问数组的值. Awk中数组称为关联数组,因为它的下标(索引)可以是数字也可以是字符串. 下标通常称为键,数组元素的键和值存储在Awk程序内部的一个表中,该表采用散列算法,因此数组元素是随机排序. 数组格式:array[index]=value 1.Nginx日志分析 日志格式:'$remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_…
python命令行是新手学习python过程中必须要学的一个工具,下面我们来看一下怎么退出python命令行. 第一种方式: 使用python提供的exit()函数,linux平台和windows平台上的exit()函数执行结果,都可以正常退出.唯一的区别是,windows平台结束后多输出了一行空行. 第二种方式: python提供的第二个函数quit(),同样是linux和windows平台,执行结果一致.都可以正常退出,windows平台多输出一行空行. 第三种方式: 快捷键: Linux系…
今天自己捣鼓了一下,在linux系统CentOs6.5下使用源码方式安装和配置mysql,这里记录一下步骤. a) 下载mysql,source版本.Mysql-5.6.20.tar.gz b) 安装编译源码所需的工具和库 yum install gcc gcc-c++ ncurses-devel perl c) 安装cmake   wget http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz tar -xzvf cmake-2.8.10.…
此python源码是linux系统more基本命令的实现. 实现linux中more的基本功能,当more后加一个文件名参数时候,分屏显示按空格换页,按回车换行',在左下角显示百分比; 以处理管道参数的输入,处理选项+num:从指定行开始显示,+/string :查找字符串,从指定字符串之后开始显示 运行环境:安装有PYTHON的linux系统 调用示例: more.py [+num ] [+/pattern] filename command|./more.py [+num ] [+/patt…
废话不多说,简单了解一下 awk - 强大的文本分析工具,也就是分析日志 最常用的就是分析日志了吧,做统计什么,这里也拿 nginx 日志来做分析 1:统计出现次数 - 比如状态码出现次数 - 先直接上命令 awk '{print $9}' access_log | sort | uniq -c | sort -rn - 可能会有一些疑惑,这个$9 是什么? - 我们拿出一条日志来看一下先 /Oct/::: +] 123.124.16.83 192.168.240.255 - 我们可以看到我们需…
脚本内容: import matplotlib.pyplot as plt # nginx_file = '10.6.11.91_access.log-2018-12-27' ip = {} #筛选nginx日志文件中的IP with open(nginx_file) as f: for i in f.readlines(): s = i.strip().split()[0] lengh = len(ip.keys()) #统计每个IP的访问以字典存储 if s in ip.keys(): ip…
经常遇到这样的情况: 系统自带的Python是2.6,自己需要Python 2.7中的某些特性: 系统自带的Python是2.x,自己需要Python 3.x: 此时需要在系统中安装多个Python,但又不能影响系统自带的Python,即需要实现Python的多版本共存. pyenv就是这样一个Python版本管理器. 安装pyenv $ git clone git://github.com/yyuu/pyenv.git ~/.pyenv $ echo 'export PYENV_ROOT="$…
Linux 默认的Python版本为Python2.X,但是在很多时候我们需要使用Python3.X,那么我们需要更改Linux的默认Python版本,更改很简单,只需要两句话. sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 100 sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 150 完成…
本文源码:GitHub·点这里 || GitEE·点这里 一.FastDFS简介 1.基础概念 FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储.文件同步.文件上传.文件下载等,解决了大容量存储和负载均衡的问题. 2.环境概览 1.默认存在Gcc编译环境,Centos7虚拟机 2.安装LibFastCommon环境 3.FastDFS中间件安装 4.Nginx代理服务器安装 二.安装LibFastCommon 核心流程 下载->解压->编译->安装 #…
如果没有安装过nginx请看:linux下nginx部署以及配置详解 1.第一个nginx已经安装完成后,现在安装第二个nginx 启动:sudo /usr/sbin/nginx3 重起:sudo /usr/sbin/nginx3 -s reload 停止:sudo /usr/sbin/nginx3 -s stop 一.进入nginx目录进行编译安装 1.切换目录: cd /usr/local/src/nginx- 安装第二个路径会有所不同,我这里安装的是第三个nginx3,如果要安装4个 就改…
mkdir /data/scriptsvim /data/scripts/nginx_log.sh #!/bin/bashlogs_path="/usr/local/nginx/logs/"mv ${logs_path}access.log ${logs_path}access_$(date -d "yesterday" +"%Y%m%d").logkill -USR1 `cat /usr/local/nginx/logs/nginx.pid`c…
为什么要支持confd,老的应用配置管理模式是启动时读取配置文件,然后重新读取配置文件需要应用重启.一般的配置管理系统都是代码侵入性的,应用接入配置管理系统都需要使用对应的SDK来查询和监听数据的变更.对于一些已经成熟的系统来说,接入SDK来实现动态配置管理是很难实现的,Nacos通过引入配置管理工具confd可以实现系统的配置变更做到无代码侵入性. confd是一个轻量级的配置管理工具,可以通过查询后端存储系统来实现第三方系统的动态配置管理,如Nginx.Tomcat.HAproxy.Dock…
1.下载Python安装包,官网下:http://www.python.org/getit/ http://jingyan.baidu.com/article/eae07827f7f2d01fec5485f7.html…
>>> import os>>> os.chdir('e:/')>>> log=open('access.log')//这两行是获取日志流>>> ip = r"?P<ip>[\d.]*">>> date = r"?P<date>\d+">>> month = r"?P<month>\w+">>…