簡單錯誤日誌報警 定時版本

2021-10-18 16:22:44 字數 2538 閱讀 8297

提取碼:set3 

編寫指令碼1

vi timer_logerr_monitor.sh

**:貼上進入

#!/bin/sh

systemname=***系統

linenum=500

error_log=`/bin/ls /data/logs/log_error.log`

date=`date +%y年%m月%d日%h時%m分%s秒`

error_new_log=/data/logs/$date'_error.log'

host=`/bin/hostname`

ip=`/sbin/ifconfig|grep "inet addr"|grep "bcast"|cut -d":" -f2|awk -f" " ''`

if [ ! -f $error_new_log ];then

/bin/touch $error_new_log

fiecho '-------1-----' 

num1=$(/usr/bin/tail -$linenum $error_log|grep 'exception'|grep -v '不存在'|grep -v '資源'|grep -v '驗證碼'|grep -v '邀請'|grep -v '使用者'|grep -v '賬號'|grep -v 'httprequestmethodnotsupportedexception'|wc -l)

num2=$(/bin/cat $error_new_log|wc -l)

if [ -f $error_log ] && [ $num1 -ne 0 ] && [ $num2 -eq 0 ];then

/usr/bin/tail -1000 $error_log  > $error_new_log

error_message=$(cat $error_new_log)

rm -rf $error_log

/bin/touch $error_log

fi

編寫指令碼2

vi sendemail.sh

**:貼上進入

# filename: sendemail.sh

# notes: 使用sendemail

## 指令碼的日誌檔案

echo '-------start---email-----------------'

logfile="/tmp/email.log"

:>"$logfile"

exec 1>"$logfile"

exec 2>&1

#開通郵箱得smtp_server

smtp_server='smtp.163.com'

username='***[email protected]'

password='***x'

from_email_address='[email protected]'

to_email_address1="[email protected]"

message_subject_utf8="$2"

message_body_utf8="$3"

# 轉換郵件標題為gb2312,解決郵件標題含有中文,收到郵件顯示亂碼的問題。

message_subject_gb2312=`iconv -t gb2312 -f utf-8 << eof

$message_subject_utf8

eof`

[ $? -eq 0 ] && message_subject="$message_subject_gb2312" || message_subject="$message_subject_utf8"

# 轉換郵件內容為gb2312,解決收到郵件內容亂碼

message_body_gb2312=`iconv -t gb2312 -f utf-8 << eof

$message_body_utf8

eof`

[ $? -eq 0 ] && message_body="$message_body_gb2312" || message_body="$message_body_utf8"

# 傳送郵件

sendemail='/***/sendemail-v1.56/sendemail'

set -x

$sendemail -s "$smtp_server" -xu "$username" -xp "$password" -f "$from_email_address" -t "$to_email_address1" -u "$message_subject" -m "$message_body" -o message-content-type=text -o message-charset=gb2312

編寫linux定時任務crontab,不會編輯crontab可以看

加入

45 *   * * *   root    sh /***x/timer_logerr_monitor.sh >/dev/null 2>&1

每小時45分迴圈一次

阿里雲日誌報警

這裡簡單介紹下基於阿里雲日誌服務的報警設定 1 首先通過loghub輸出到阿里雲日誌服務 2 基於日誌服務這裡簡單介紹兩種報警 2.1 基於阿里雲本身提供的報警設定 2.1.1 進入需要查詢的標籤頁面,在輸入框輸入查詢語句。例如 select inst id,request uri,requesti...

oracle 報警日誌詳解

oracle報警日誌是乙個非常重要的日誌,其有兩種實現方法 1 通過全域性表來實現,這種方法有一種缺點,就是在關閉資料庫後或者資料庫宕機後就不能在使用了 2 通過外部表來實現,這種方法避免了方法一種的情況。特此以方法二為例進行解析。建立外部表的過程,檢視日誌路徑,建立目錄,此目錄是日誌存放的目錄,o...

php錯誤日誌簡單配置方法

php.ini 錯誤日誌 log errors on 顯示錯誤 display errors off 日誌路徑 error log usr local lnmp php vawww.cppcns.comr log error log 錯誤等級 error reporting e all e noti...