Nginx Java 日志切割脚本
Nginx日志切割脚本:
#!/bin/bash #############################################################################
logs_path="/usr/local/nginx/logs"
pid_path="/var/run/nginx.pid"
backup_dir="/data/log/nginx"
[ ! -d $backup_dir ] && mkdir -p $backup_dir
mv ${logs_path}/access.log ${backup_dir}/access_$(date -d "yesterday" +"%F").log gzip ${backup_dir}/access_$(date -d "yesterday" +"%F").log && echo "nginx log sucess" kill -USR1 `cat ${pid_path}`
Java日志切割脚本:
#!/bin/bash
#This script run at 00:03 in cron
logs_path="/usr/local/tomcat7/logs"
logs_dir="/data/log/tomcat/"
logdate=`date -d "yesterday" +"%Y-%m-%d"`
for i in $logs_path
do
echo "...................", $i
Hostname=`hostname`
yesterday=`date -d "yesterday" +"%Y%m%d"`
[ ! -e ${logs_dir}$(date +"%Y%m") ] && mkdir -p $logs_dir$(date +"%Y%m")
cat $i/catalina.out > $logs_dir$(date +"%Y%m")/catalina.out_"$Hostname"_"$yesterday".log
cat $i/localhost_access_log.$logdate.txt > $logs_dir$(date +"%Y%m")/localhost_access_log_"$Hostname"_"$yesterday".log echo ""> $i/catalina.out
cd $logs_dir$(date +"%Y%m") && gzip catalina.out_"$Hostname"_"$yesterday".log && echo "java gzip sucess..." done
2.一台机器上面跑两个tomcat应用的日志切割方法:
####################################################################################### #!/bin/bash
#This script run at 00:03 in cron
#####################################################################################
logs_path="/usr/local/tomcat-App1/logs/ /usr/local/tomcat-App2/logs"
logs_dir="/data/log/tomcat/"
logdate=`date -d "yesterday" +"%Y-%m-%d"`
pro="App1 App2"
for i in $logs_path
do
echo "...................", $i
Hostname=`hostname`
yesterday=`date -d "yesterday" +"%Y%m%d"`
[ ! -e ${logs_dir}$(date +"%Y%m") ] && mkdir -p $logs_dir$(date +"%Y%m")
for m in $pro
do
cat $i/catalina.out > $logs_dir$(date +"%Y%m")/cata_"$m"_"$Hostname"_"$yesterday".log
cat $i/localhost_access_log.$logdate.txt > $logs_dir$(date +"%Y%m")/localhost_access_"$m"_"$Hostname"_"$yesterday".log
done
done
echo ""> $i/catalina.out
cd $logs_dir$(date +"%Y%m") && gzip cata_*_"$Hostname"_"$yesterday".log && echo "java gzip sucess..."
加入定时任务:
*/59 * * * * /usr/sbin/ntpdate cn.pool.ntp.org>/dev/null 2>&1
0 0 * * * /bin/sh /opt/bin/crontab/cronolog.sh 2>&1
10 0 * * * /bin/sh /opt/bin/crontab/nginx_log.sh /dev/null 2>&1
Nginx Java 日志切割脚本的更多相关文章
- nginx 的日志切割
nginx的日志切割脚本 说明:在nginx的配置文件中nginx.conf并没有定义access_log的位置, 在/usr/local/nginx/conf/vhost/下的配置文件中定义了acc ...
- nginx学习笔记(四)-----日志切割脚本及定时任务
一.日志切割脚本 #!/bin/sh #nginx目录 BASE_DIR=/usr/local/nginx #生成的日志 BASE_FILE_NAME=jonychen.access.log CURR ...
- mongo日志切割脚本
两种mongo日志切割脚本 vim /etc/logrotate.d/mongodb /home/mongodb/mongolog/mongod.log { daily rotate 7 compre ...
- Nginx定时日志切割
Nginx定时日志切割 现有的日志都会存在access.log文件中,但是随着时间的推移,这个文件的内容会越来越多,体积会越来越大,不便于运维 人员查看,所以我们可以通过把这个大的日志文件切割为多份不 ...
- linux shell:nginx日志切割脚本
需求原因:nginx不具备日志切割功能,日志量较大,方便分析. 实现目的:完成nginx日志切割,并根据时间命名 简要命令: mv /usr/local/tengine/logs/access.l ...
- Nginx log日志切割shell
#!/bin/bash#此脚本用于自动分割Nginx的日志,包括access.log和error.log#每天00:00执行此脚本 将前一天的access.log重命名为access-xxxx-xx- ...
- nginx的日志切割
nginx日志默认情况下统统写入到一个文件中,文件会变的越来越大,非常不方便查看分析.以日期来作为日志的切割是比较好的,通常我们是以每日来做统计的.下面来说说nginx日志切割. 如果我们使用的是yu ...
- nginx日志切割脚本
#!/bin/bash ip=`ifconfig eth0 | grep "inet addr" | cut -f 2 -d ":" | cut -f 1 -d ...
- nginx 日志切割脚本
#!/bin/shLOG_PATH=/home/test/nginx/logsNEW_LOG_PATH=/home/test/nginx/dayslogNGING_PID=$(cat /home/te ...
随机推荐
- 【BZOJ3590】[Snoi2013]Quare 状压DP
这道题...神题. 首先看到数据范围,一眼状压 dp .然后? 没了. 理性分析,这里说断掉任意一条边图依然连通,即整个图构成一个边双(而不是点双). 之前用 fire (机房里的随机算法总称)之所以 ...
- Linux内核初探
内存管理之内存寻址 内存管理是迄今为止Unix内核中最复杂的活动 虚拟内存: 所有新近的Unix系统都提供一种有用的抽象, 叫作虚拟内存(virtual memory): 虚拟内存可以理解为一种逻辑层 ...
- 016_把普通用户免秘钥加入root用户的几种方式
一.第一种方式. (1) [root@infra-jyallkv-tikv-pps-7 ~]# tail /etc/sudoers## Allows members of the users grou ...
- $Djangon admin界面 添加表 增删查改
from django.contrib import admin表变中文 class Meta: verbose_name_plural='评论表' null=True的字段:admin创建要求写可以 ...
- Cassandra索引详解
转自: https://www.cnblogs.com/bonelee/p/6278943.html 1.什么是二级索引? 我们前面已经介绍过Cassandra之中有各种Key,比如Primary K ...
- [C][代码实例]交换指向常量的二级指针的位置
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <time.h> ...
- [MySQL]多表关联查询技巧
示例表A: author_id author_name 1 Kimmy 2 Abel 3 Bill 4 Berton 示例表B: book_id author_id start_date end_da ...
- Python-数据库 基本SQL语句
1. 数据库是什么 2. MySQL安装 3. 用户授权 4. 数据库操作 - 数据表 - 数据类型 - 是否可以为空 - 自增 - 主键 - 外键 - 唯一索引 数据行 增 删 改 查 排序: or ...
- python-常用模块xml、shelve、configparser、hashlib
一.shelve模块 shelve模块也是用来序列化的. 使用方法: 1.open 2.读写 3.close import shelve # 序列化 sl = shelve.open('shlvete ...
- Confluence 6 MySQL 3.x 字符集编码问题
MySQL 3.x is 已知在大写和小写转换的时候有些问题(non-ASCII). 问题诊断 请按照 Troubleshooting Character Encodings 页面中的内容对问题进行诊 ...