您好,歡迎來到網暖!
?
當前位置:網暖 » 站長資訊 » 建站基礎 » 網絡技術 » 文章詳細 訂閱RssFeed

Nginx優化---日志分割

來源:網絡整理 瀏覽:305次 時間:2019-11-18
概述

隨著Nginx運行時間增加,日志也會增加。為了方便掌握Nginx運行狀態,需要時刻關注Nginx日志文件太大的日志文件對監控是-一個大災難就需要定期進行日志文件的切割。
Nginx自身不具備日志分割處理的功能,但可以通過Nginx信號控制功能的腳本實現日志的自動切割,并通過Linux的計劃任務周期性地進行日志切割。

實驗步驟一、編譯安裝Nginx服務

第一步:遠程獲取Windows上的源碼包,并掛載到Linux上

[[email protected] ~]# smbclient -L //192.168.235.1Enter SAMBA\root's password: Sharename       Type      Comment---------       ----      -------LNMP            Disk  [[email protected] ~]# mkdir /abc[[email protected] ~]# mount.cifs //192.168.235.1/LNMP /abcPassword for [email protected]//192.168.235.1/LNMP:  [[email protected] ~]# ls /abcDiscuz_X3.4_SC_UTF8.zip    nginx-1.12.0.tar.gz  php-7.1.10.tar.bz2mysql-boost-5.7.20.tar.gz  nginx-1.12.2.tar.gz  php-7.1.20.tar.gz

第二步:解壓源碼包

[[email protected] ~]# cd /abc[[email protected] abc]# tar zxvf nginx-1.12.0.tar.gz -C /opt[[email protected] abc]# ls /optnginx-1.12.0  rh

第三步:下載安裝編譯組件包

[[email protected] abc]# cd /opt[[email protected] opt]# yum install -y \> gcc \             //C語言> gcc-c++ \         //c++語言> pcre-devel \      //pcre語言工具> zlib-devel        //壓縮函數庫

第四步:創建程序用戶并配置Nginx服務相關組件

[[email protected] opt]# useradd -M -s /sbin/nologin nginx//創建程序用戶nginx,并限定其不可登錄終端[[email protected] opt]# cd nginx-1.12.0/[[email protected] nginx-1.12.0]# ./configure \            //配置nginx> --prefix=//usr/local/nginx \      //指定安裝路徑                        > --user=nginx \//指定用戶名> --group=nginx \//指定用戶所屬組> --with-http_stub_status_module//安裝狀態統計模塊

第五步:編譯與安裝Nginx

[[email protected] nginx-1.12.0]# make && make install

第六步:優化Nginx服務啟動腳本,并建立命令軟連接

[[email protected] nginx-1.12.0]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ //創建nginx服務命令軟鏈接到系統命令[[email protected] nginx-1.12.0]# systemctl stop firewalld.service //關閉防火墻[[email protected] nginx-1.12.0]# setenforce 0//關閉增強型安全功能[[email protected] nginx-1.12.0]# nginx //輸入nginx 開啟服務[[email protected] nginx-1.12.0]# netstat -ntap | grep 80      //查看服務的80 端口,顯示已開啟tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      7520/nginx: master  

第七步:systemctl管理nginx腳本

[[email protected] ~]# vim /lib/systemd/system/nginx.service      ##創建配置文件[Unit]Description=nginx                                            ##描述After=network.target                                        ##描述服務類型[Service]Type=forking                                                    ##后臺運行形式PIDFile=/usr/local/nginx/logs/nginx.pid            ##PID文件位置ExecStart=/usr/local/nginx/sbin/nginx              ##啟動服務ExecReload=/usr/bin/kill -s HUP $MAINPID    ##根據PID重載配置ExecStop=/usr/bin/kill -s QUIT $MAINPID       ##根據PID終止進程PrivateTmp=true[Install]WantedBy=multi-user.target[[email protected] ~]# chmod 754 /lib/systemd/system/nginx.service     ##設置執行權限[[email protected] ~]# systemctl stop nginx.service       ##關閉nginx [[email protected] ~]# systemctl start nginx.service       ##開啟
二、編寫腳本進行日志分割
[[email protected] nginx-1.12.0]# vim fengge.sh#!/bin/bash#Filename:fengge.sh##描述信息d=$(date -d "-1 day" "+%Y%m%d" )##顯示系統一天前的時間,并生成一個日期字符串,如"2019.11.11"logs_path="/var/log/nginx"##日志分割后存放路徑pid_path="/usr/local/nginx/logs/nginx.pid"##Nginx的進程號文件[ -d $logs_path ] || mkdir -p $logs_path##判斷是否有認真的存放路徑,如不存在則創建該路徑mv /usr/local/nginx/logs/access.log ${logs_path}/test.com-access.log-$d##移出原有路徑下的訪問日志生成到創建的路徑下,并以日期命名生成后的日志文件kill -USR1 $(cat $pid_path)##結束此前的進程號,用以生成新的進程號find $logs_path -mtime +30 | xargs rm -rf##尋找路徑下30天前的文件并刪除,xargs用于將前面命令的處理結果作為管道符號后的命令的參數[[email protected] nginx-1.12.0]# chmod +x fengge.sh ##授予腳本執行權限[[email protected] nginx-1.12.0]# ls /var/log/nginxtest.com-access.log-20191112##查看指定路徑下生成的的日志分割文件[[email protected] nginx-1.12.0]# ls /usr/local/nginx/logsaccess.log  error.log  nginx.pid##查看Nginx服務日目錄,可見有自動生成了一個access.log日志
謝謝閱讀!!!

推薦站點

  • 騰訊騰訊

    騰訊網(www.QQ.com)是中國瀏覽量最大的中文門戶網站,是騰訊公司推出的集新聞信息、互動社區、娛樂產品和基礎服務為一體的大型綜合門戶網站。騰訊網服務于全球華人用戶,致力成為最具傳播力和互動性,權威、主流、時尚的互聯網媒體平臺。通過強大的實時新聞和全面深入的信息資訊服務,為中國數以億計的互聯網用戶提供富有創意的網上新生活。

    www.qq.com
  • 搜狐搜狐

    搜狐網是全球最大的中文門戶網站,為用戶提供24小時不間斷的最新資訊,及搜索、郵件等網絡服務。內容包括全球熱點事件、突發新聞、時事評論、熱播影視劇、體育賽事、行業動態、生活服務信息,以及論壇、博客、微博、我的搜狐等互動空間。

    www.sohu.com
  • 網易網易

    網易是中國領先的互聯網技術公司,為用戶提供免費郵箱、游戲、搜索引擎服務,開設新聞、娛樂、體育等30多個內容頻道,及博客、視頻、論壇等互動交流,網聚人的力量。

    www.163.com
  • 新浪新浪

    新浪網為全球用戶24小時提供全面及時的中文資訊,內容覆蓋國內外突發新聞事件、體壇賽事、娛樂時尚、產業資訊、實用信息等,設有新聞、體育、娛樂、財經、科技、房產、汽車等30多個內容頻道,同時開設博客、視頻、論壇等自由互動交流空間。

    www.sina.com.cn
  • 百度一下百度一下

    百度一下,你就知道

    www.baidu.com
?
3a开奖号码查询