php nginx日志分析,php解析nginx日志的实例代码

本节内容:

php解析nginx日志

1,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"';

2,Nginx日志参数

server_name          : 虚拟主机的主机名称

remote_addr          : 远程客户端的ip地址

remote_user          : 远程客户端用户名称

time_local           : 访问的时间与时区

status           : 记录请求返回的http状态码

body_bytes_sent      : 发送给客户端的文件主体内容的大小

http_referer             : 从哪个页面链接访问过来

http_user_agent      : 客户端浏览器信息

http_x_forwarded_for     : 客户端的真实ip

3,Nginx日志分割符

使用特殊的不可打印字符^A(ctrl+v,ctrl+a)作为日志分割符

4,根据关键字过滤文件内容

需求

根据http的请求里是否有“weibo”这个关键字提取文件的内容

例子:

复制代码 代码示例:

/**

* Description:按行读取文件内容进行过滤匹配

* site www.jbxue.com

* @return array

*/

function readFileContent ($filename)

{

$weibo_content = array();

$fh = @fopen($filename, 'r');

www.jbxue.com

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;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值