Nginx的日志分割及pv統(tǒng)計展示

??????運維統(tǒng)計分析驼修,通過分割nginx日志(按小時/天/星期/月)殿遂,pv統(tǒng)計訪問量以便于分析熱門操作場景诈铛。具體實施按以下幾點執(zhí)行:

1.獲取nginx配置nginx.conf文件所在的目錄乙各;
??????如/etc/nginx/nginx.conf
2.nginx.conf指定pid文件的存放位置;
??????pid /wls/nginx/nginx.pid;
3.nginx.conf指定日志文件的格式幢竹;
??????log_format access $remote_addr - $remote_user [$time_local] "$request"' '$status $body_bytes_sent "$http_referer"' '"$http_user_agent" $http_x_forwarded_for;
其中耳峦,access表示日志類型的別名
4.nginx.conf指定日志文件存放的位置,并指定日志格式焕毫;
??????access_log /etc/nginx/logs/access.log access;
5.執(zhí)行nginx -t檢測nginx.conf的配置是否異常蹲坷;
??????若提示pid的路徑無操作權(quán)限,核對終端提示的路徑與nginx.conf中配置是否一致邑飒。若不一致循签,請以終端返回的地址為準;
??????2018/09/24 09:53:55 [emerg] 55408#0: open() "/run/nginx.pid" failed (13: Permission denied)
如終端提示的pid文件地址為"/run/nginx.pid"疙咸,將配置的地址pid /wls/nginx/nginx.pid改為pid /run/nginx.pid;
6.指定nginx的配置文件路徑
??????nginx -c /etc/nginx/nginx.conf
若終端提示端口占用县匠,先查看端口是否為nginx端口,若是先終止進程撒轮,再次執(zhí)行 nginx -c命令
7.重啟nginx乞旦;
??????sudo nginx -s reload
8.定期將日志分割備份;

指明日志存放路徑
LOG_HOME="/etc/nginx/logs/"

獲取日期變量题山,保存為前一天的日志
day=$(date -d '-1day' +%Y%m%d)

備份日志文件兰粉,以日期分割
echo 'paic1234' | sudo -S mv $LOG_HOME/access.log $LOG_HOME/access.log-$day
# 重讀日志
echo 'paic1234' | sudo -S kill -USR1 `cat /run/nginx.pid`

9.分析分割后的日志

pvs = `awk '{print $7}' $NGINX_LOG_PATH | grep $keywords | grep "\.html" | wc -l`
echo pvs = $pvs

IP = `awk '{print $1 " " $7}' $NGINX_LOG_PATH | grep $keywords | grep "\.html" | awk '{print $1}'|sort | uniq -c |wc -l`
echo IP = $IP

page_url = `awk '{print $7}' $NGINX_LOG_PATH | grep $keywords  | grep "\.html" |sort | uniq -c |sort -n -k 1 -r |head -n 10`
echo page_url = $page_url
...
result=`python $PYTHON_SCRIPT $DATE $pvs $IP $page_url `
echo $result

其中,$NGINX_LOG_PATH為nginx日志文件地址顶瞳,$PYTHON_SCRIPT為第10步中的python文件玖姑,作用是將關(guān)鍵字相關(guān)的pv次數(shù),ip以及請求路徑上報至數(shù)據(jù)庫中慨菱。
10.將分析結(jié)果寫入文件或者數(shù)據(jù)庫

#以日期粒度更新統(tǒng)計數(shù)據(jù)
import MySQLdb
from sys import argv
import json
if __name__ == '__main__':
    file, date, pvs,ip,page_url = argv
    if date == "":
        exit(0)
    # 連接數(shù)據(jù)庫
    db = MySQLdb.connect(host="xx", port=3306, user="test",passwd="test",db="test",charset="utf8")
    # cursor()操作游標
    cursor = db.cursor()
    cursor.execute("SELECT * from tb_test where date='"+date+")
    data = cursor.fetchone()
    if data:
        sql = "UPDATE sql"
    else:
        sql = "INSERT INTO sql"
    try:
        cursor.execute(sql)
        db.commit()
    except:
        db.rollback()
    db.close()

11.將分析統(tǒng)計展示出來
獲取數(shù)據(jù)庫中保存的數(shù)據(jù)焰络,以圖標的方式展示:

image.png

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市抡柿,隨后出現(xiàn)的幾起案子舔琅,更是在濱河造成了極大的恐慌,老刑警劉巖洲劣,帶你破解...
    沈念sama閱讀 219,539評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件备蚓,死亡現(xiàn)場離奇詭異,居然都是意外死亡囱稽,警方通過查閱死者的電腦和手機郊尝,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評論 3 396
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來战惊,“玉大人流昏,你說我怎么就攤上這事。” “怎么了况凉?”我有些...
    開封第一講書人閱讀 165,871評論 0 356
  • 文/不壞的土叔 我叫張陵谚鄙,是天一觀的道長。 經(jīng)常有香客問我刁绒,道長闷营,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,963評論 1 295
  • 正文 為了忘掉前任知市,我火速辦了婚禮傻盟,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘嫂丙。我一直安慰自己娘赴,他們只是感情好,可當我...
    茶點故事閱讀 67,984評論 6 393
  • 文/花漫 我一把揭開白布跟啤。 她就那樣靜靜地躺著诽表,像睡著了一般。 火紅的嫁衣襯著肌膚如雪腥光。 梳的紋絲不亂的頭發(fā)上关顷,一...
    開封第一講書人閱讀 51,763評論 1 307
  • 那天,我揣著相機與錄音武福,去河邊找鬼议双。 笑死,一個胖子當著我的面吹牛捉片,可吹牛的內(nèi)容都是我干的平痰。 我是一名探鬼主播,決...
    沈念sama閱讀 40,468評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼伍纫,長吁一口氣:“原來是場噩夢啊……” “哼宗雇!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起莹规,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤赔蒲,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后良漱,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體舞虱,經(jīng)...
    沈念sama閱讀 45,850評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,002評論 3 338
  • 正文 我和宋清朗相戀三年母市,在試婚紗的時候發(fā)現(xiàn)自己被綠了矾兜。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,144評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡患久,死狀恐怖椅寺,靈堂內(nèi)的尸體忽然破棺而出浑槽,到底是詐尸還是另有隱情,我是刑警寧澤返帕,帶...
    沈念sama閱讀 35,823評論 5 346
  • 正文 年R本政府宣布桐玻,位于F島的核電站,受9級特大地震影響溉旋,放射性物質(zhì)發(fā)生泄漏畸冲。R本人自食惡果不足惜嫉髓,卻給世界環(huán)境...
    茶點故事閱讀 41,483評論 3 331
  • 文/蒙蒙 一观腊、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧算行,春花似錦梧油、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,026評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至量淌,卻和暖如春骗村,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背呀枢。 一陣腳步聲響...
    開封第一講書人閱讀 33,150評論 1 272
  • 我被黑心中介騙來泰國打工胚股, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人裙秋。 一個月前我還...
    沈念sama閱讀 48,415評論 3 373
  • 正文 我出身青樓琅拌,卻偏偏與公主長得像,于是被迫代替她去往敵國和親摘刑。 傳聞我的和親對象是個殘疾皇子进宝,可洞房花燭夜當晚...
    茶點故事閱讀 45,092評論 2 355