国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > Nginx > 正文

nginx可以自動創建log文件嗎?

2024-08-30 12:23:52
字體:
來源:轉載
供稿:網友
  nginx自動切割訪問日志
  Web 訪問日志 (access_log) 記錄了所有外部客戶端對Web服務器的訪問行為,包含了客戶端IP,訪問日期,訪問的URL資源,服務器返回的HTTP狀態碼等重要信息。
  一條典型的Web訪問日志如下:
  112.97.37.90 - - [14/Sep/2013:14:37:39 +0800] "GET / HTTP/1.1" 301 5 "-" "Mozilla/5.0 (Linux; U; Android 2.3.6; zh-cn; Lenovo A326 Build/GRK39F) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 MicroMessenger/4.5.1.259" -


 
  規劃:
  1、 要解決問題:
  當網站訪問量大后,日志數據就會很多,如果全部寫到一個日志文件中去,文件會變得越來越大。文件大速度就會慢下來,比如一個文件幾百兆。寫入日志的時候,會影響操作速度。另外,如果我想看看訪問日志,一個幾百兆的文件,下載下來打開也很慢。使用第三方免費的日志分析工具-日志寶,可以上傳nginx、apache、iis的日志文件,它們幫助分析網站安全方面。畢竟專攻,更加專業。日志寶對上傳的文件也是做了大小限制的,不超過50m。
  2、nignx沒有自動分開文件存儲日志的機制。由于nginx它不會幫你自動分文件保存。所以,需要自己編寫腳本來實現。
  shell腳本文件nginx_log_division.sh內容如下:
  # /bin/bash
  logs_path="/data/wwwlogs/"
  #以前的日志文件。
  log_name="xxx.log"
  pid_path="/usr/local/nginx/logs/nginx.pid"
  mv ${logs_path}${log_name} ${logs_path}${log_name}_$(date --date="LAST WEEK" +"%Y-%m-d").log
  kill -USR1 `cat ${pid_path}`
  上面shell腳本的原理是:先把以前的日志文件移動重命名成一個,目的是就是備份。
  按照上個周一的本日來命名,運行腳本的時候時間點是”2013-09-16”,那么生成文件名稱是”xxx.log_ 20130909.log”。
  在沒有執行kill -USR1 `cat ${pid_path}`之前,即便已經對文件執行了mv命令而改變了文件名稱,nginx還是會向新命名的文件” xxx.log_ 20130909”照常寫入日志數據的。原因在于:linux系統中,內核是根據文件描述符來找文件的。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 永春县| 嵊泗县| 达州市| 株洲县| 吴堡县| 蕉岭县| 肥乡县| 石柱| 平昌县| 界首市| 苏尼特左旗| 原阳县| 湘潭市| 长治市| 平凉市| 临洮县| 邻水| 无锡市| 巴里| 宁强县| 临夏市| 浙江省| 姚安县| 原阳县| 蒙阴县| 汾阳市| 乌海市| 博湖县| 新乐市| 新巴尔虎右旗| 石棉县| 东明县| 黎城县| 柳州市| 桦甸市| 西充县| 额敏县| 墨玉县| 略阳县| 郧西县| 沅陵县|