問(wèn)題描述:
多個(gè)項(xiàng)目,有些項(xiàng)目分庫(kù)分表分布在多個(gè)節(jié)點(diǎn),因此,對(duì)慢日志的切割并且收集對(duì)于慢日志分析來(lái)說(shuō)是極其必要的。
實(shí)現(xiàn)方案:
①環(huán)境準(zhǔn)備
Host1 : ftp
服務(wù)器(192.168.xx.xxx),用于集中存儲(chǔ)各項(xiàng)目每天(可腳本自定義)的日志
Host2 : MySQL服務(wù)器(192.168.xx.xxx),用于存儲(chǔ)配置相關(guān)的參數(shù)(如需要收集的日志host,user,pwd,日志位置等信息),之后用于腳本的查詢(xún)調(diào)用。
Host3 : 執(zhí)行操作的機(jī)器(192.168.xx.xxx) ,即執(zhí)行腳本設(shè)置定時(shí)任務(wù)的機(jī)器
②腳本準(zhǔn)備
涉及到兩個(gè)腳本,logrotate.sh 以及 job.sh
其中job.sh用于批量執(zhí)行的mysql中存儲(chǔ)的相關(guān)host的操作,job.sh調(diào)用logrotate.sh
logrotate.sh用于在各臺(tái)需要收集日志的機(jī)器上實(shí)際的執(zhí)行操作
mysql配置表結(jié)構(gòu)及數(shù)據(jù)如下(注意添加一個(gè)所有機(jī)器都能查詢(xún)?cè)摫淼囊粋€(gè)賬號(hào)):
job.sh腳本如下:
-
#!/bin/bash
-
-
-
mysql_host=192.168.xx.xxx
-
mysql_port=3456
-
mysql_user=xxx
-
mysql_pwd=xxxxxx
-
-
-
function get_info {
-
cmd=`which mysql`
-
$cmd -h$mysql_host -P$mysql_port -u$mysql_user -p$mysql_pwd -BNe "select * from DB_SPLIT_LOG.t_log_info;" | while read line
-
do
-
host_ip=`echo $line | awk '{print $3}'`
-
ssh_user=`echo $line | awk '{print $9}'`
-
ssh_pwd=`echo $line | awk '{print $10}'`
-
/usr/bin/sshpass -p $ssh_pwd ssh -o StrictHostKeyChecking=no $ssh_user@$host_ip "bash " < logrotate.sh
-
done
-
}
-
-
get_info
logrotate.sh腳本內(nèi)容如下:
在Host3上將兩個(gè)腳本置于一個(gè)目錄之下,然后添加一個(gè)定時(shí)任務(wù)
在Host2(ftp)上查看操作結(jié)果
③過(guò)程描述
1 . job.sh 查詢(xún)DB_SPLIT_LOG.t_log_info表中的所有host_ip ssh_user ssh_pwd ,然后循環(huán)遠(yuǎn)程執(zhí)行腳本logrotate.sh
2 . logrotate.sh 首先查詢(xún)本機(jī)ip ,然后根據(jù)本機(jī)ip獲取DB_SPLIT_LOG.t_log_info表中對(duì)應(yīng)的log_dir lot_file game ftp相關(guān)信息
3 . 生成logrotate的配置文件
4 . 進(jìn)行切割
5 . 更改切割出來(lái)的日志名稱(chēng)
6 . 上傳到ftp
7 . 清空臨時(shí)文件
注意點(diǎn):logrotate所切割的文件產(chǎn)生的結(jié)果必須和源文件在一個(gè)分區(qū)上(即你切割的結(jié)果文件slow.log-2016-10-25和原來(lái)的slow.log文件),不然切割會(huì)不成功。
另 : 該腳本適用于任何日志文件的切割與收集。只需要在DB_SPLIT_LOG.t_log_info表中添加相應(yīng)的記錄即可。
網(wǎng)頁(yè)名稱(chēng):多項(xiàng)目百庫(kù)百表慢日志切割
標(biāo)題網(wǎng)址:http://bm7419.com/article46/jdsoeg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、做網(wǎng)站、、域名注冊(cè)、移動(dòng)網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)
廣告
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源:
創(chuàng)新互聯(lián)