文档章节

关于使用keepalived后nginx日志中的健康日志清除方法

s
 start0cheng
发布于 2015/02/09 23:14
字数 342
阅读 11
收藏 0
 近期在ESX上部署了小站,使用lvs+keepalived负载均衡,发现nginx服务的日志里有大量的信息,看日志时很是痛苦,在nginx上想让方法不让它记录,结是我是没有找到。问了煮酒哥后,使用 sed来删除它,于是乎在日志切割的脚本中使用它。呵,sed不是很熟,各位熟sed的欢迎拍砖!

 

[root@svr1 20110827]# tail 20110827.access.log 
10.1.1.20 - - [27/Aug/2011:23:59:32 +0800] "-" 400 0 "-" "-" -
10.1.1.10 - - [27/Aug/2011:23:59:33 +0800] "-" 400 0 "-" "-" -
10.1.1.20 - - [27/Aug/2011:23:59:38 +0800] "-" 400 0 "-" "-" -
10.1.1.10 - - [27/Aug/2011:23:59:39 +0800] "-" 400 0 "-" "-" -
10.1.1.20 - - [27/Aug/2011:23:59:44 +0800] "-" 400 0 "-" "-" -
10.1.1.10 - - [27/Aug/2011:23:59:45 +0800] "-" 400 0 "-" "-" -
10.1.1.20 - - [27/Aug/2011:23:59:50 +0800] "-" 400 0 "-" "-" -

 


  
  1. #!/bin/bash 
  2. #made by cheng 
  3. #blog:myhat.blog.51cto.com 
  4. #last_time=2011/08/16 
  5.  
  6. #your logs store 
  7. log_path=/data1/backup_log 
  8. nginx_pid=/usr/local/webserver/nginx/nginx.pid 
  9. nginx_log=/data1/logs 
  10. yesterday=`date -d "yesterday" +%Y%m%d` 
  11. host=`ls -l $nginx_log/*.access.log | awk -F " " '{print $9}' | awk -F ".access" '{print $1}' | awk -F "$nginx_log/" '{print $2}'` 
  12.  
  13.  
  14.  
  15. for i in $host 
  16. do 
  17.         if [ ! -d $log_path/$i/$yesterday ];then 
  18.                 mkdir -p $log_path/$i/$yesterday 
  19.         fi 
  20.         if [ ! -f  $log_path/$i/$yesterday/$yesterday.access.log ];then 
  21.                mv $nginx_log/$i.access.log  $log_path/$i/$yesterday/$yesterday.access.log 
  22.                kill -USR1 `cat $nginx_pid` 
  23.         else 
  24.                mv  -bf  $nginx_log/$i.access.log $log_path/$i/$yesterday/ 
  25.                sed -i '/^10.1.1/d' $log_path/$i/$yesterday/$i.access.log  
  26.                sed -i '/^$/d' $log_path/$i/$yesterday/$i.access.log 
  27.                kill -USR1 `cat $nginx_pid` 
  28.         fi 
  29. done 

 

本文出自 “潜入技术的海洋” 博客,请务必保留此出处http://myhat.blog.51cto.com/391263/652734

本文转载自:http://myhat.blog.51cto.com/391263/652734

s
粉丝 3
博文 260
码字总数 0
作品 0
广州
私信 提问
基于keepalived实现Director、ipvs、Nginx的高可用以及Nginx的双主模型

Keepalived的作用是检测web服务器的状态,如果有一台web服务器死机,或工作出现故障,Keepalived将检测到,并将有故障的web服务器从系统中剔除,当web服务器工作正常后Keepalived自动将web服...

chinahaike
2014/04/30
0
0
集群介绍&keepalived介绍&用keepalived配置高可用集群

18.1 集群介绍 • Linux集群根据功能划分为两大类:高可用和负载均衡 • 高可用集群通常为两台服务器,一台工作,另外一台作为冗余,当提供服务的机器宕机,冗余将接替继续提供服务 • 实现高...

影夜Linux
2018/07/07
47
0
实践:在CentOS7.3部署 keepalived 高可用nginx(负载均衡)

背景: 既然有了Lvs+keepalived这样高性能的组合,那为何还要有Nginx+keepalived呢,keepalived的初衷就是为了Lvs而设计的,我们都知道Lvs是一个四层的负载均衡设备,虽然有着高性能的优势,但...

ljohnmail
2018/07/03
0
0
linux集群-keepalived介绍-用keepalived配置高可用集群

linux集群介绍: 以功能划分:高可用和负载均衡 高可用集群:通常为两台服务器,一台工作,另外一台作为冗余。实现高可用的开源软件有:heartbeat、keepalived 负载均衡集群:一台服务器作为...

ZHENG-JY
2018/09/05
28
0
lvs+keepalived 高可用负载均衡模式分析

1. 前言 在《keepalived 双机热备》这篇文章中,我写了利用keepalived 这个开源软件实现高可用的功能,以及keepalived 高可用所使用的协议——利用vrrp 协议,在高可用网络组内广播自己的优先...

hello_cjq
2018/03/30
0
0

没有更多内容

加载失败,请刷新页面

加载更多

川普给埃尔多安和内堪尼亚胡的信

任性 https://twitter.com/netanyahu/status/1186647558401253377 https://edition.cnn.com/2019/10/16/politics/trump-erdogan-letter/index.htm...

Iridium
24分钟前
10
0
golang-mysql-原生

db.go package mainimport ("database/sql""time"_ "github.com/go-sql-driver/mysql")var (db *sql.DBdsn = "root:123456@tcp(127.0.0.1:3306)/test?charset=u......

李琼涛
52分钟前
5
0
编程作业20191021092341

1编写一个程序,把用分钟表示的时间转换成用小时和分钟表示的时 间。使用#define或const创建一个表示60的符号常量或const变量。通过while 循环让用户重复输入值,直到用户输入小于或等于0的值...

1李嘉焘1
53分钟前
7
0
Netty整合Protobuffer

现在我们都知道,rpc的三要素:IO模型,线程模型,然后就是数据交互模型,即我们说的序列化和反序列化,现在我们来看一下压缩比率最大的二进制序列化方式——Protobuffer,而且该方式是可以跨...

算法之名
58分钟前
19
0
如何用C++实现栈

栈的定义 栈(stack)又名堆栈,它是一种运算受限的线性表。限定仅在表尾进行插入和删除操作的线性表。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压...

BWH_Steven
今天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部