php指令碼解析nginx日誌

來源:互聯網
上載者:User
nginx日誌格式access_log日誌格式
log_format  main  '$server_name$remote_addr$remote_user[$time_local]"$request"'                  '$status$body_bytes_sent"$http_referer"'                  '"$http_user_agent""$http_x_forwarded_for"';

日誌參數

server_name    : 虛擬機器主機的主機名稱remote_addr  : 遠程用戶端的ip地址remote_user   : 遠程用戶端使用者名稱稱time_local   : 訪問的時間與時區status     : 記錄請求返回的http狀態代碼body_bytes_sent  : 發送給用戶端的檔案主體內容的大小http_referer         : 從哪個頁面連結訪問過來 http_user_agent  : 用戶端瀏覽器資訊http_x_forwarded_for     : 用戶端的真實ip

日誌分割符使用特殊的不可列印字元^A(ctrl+v,ctrl+a)作為日誌分割符根據關鍵字過濾檔案內容需求根據http的請求裡是否有“weibo”這個關鍵字提取檔案的內容php代碼

    /**     * Description:按行讀取檔案內容進行過濾匹配     *     * @return array     */    function readFileContent ($filename)    {        $weibo_content = array();        $fh = @fopen($filename, 'r');                if ($fh) {            while (! feof($fh)) {                $row = fgets($fh, 4096);                $row_arr = explode("", $row);                if (isset($row_arr[3]) && preg_match('/weibo/', $row_arr[3])) {                    $weibo_content[] = $row_arr;                }            }        }        fclose($fh);                return $weibo_content;    }

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.