nginx日志计算带宽 发表于 2019-10-31 | 分类于 linux | 浏览 次 概述nginx的日志中记录了$body_bytes_sent 字段,表示发送给客户端的字节数(不包括响应头的大小),通过计算该字段,然后乘以合理的TCP和HTTP损耗,就可以得出带宽的值。 实现方法12345678910#!/bin/bash#get dateDATE=`date +%d/%b/%Y:%H:%M -d "2 min ago"`TOTALBYTE1=`grep "$DATE" /data/nginxlog/aaa.com.log |awk '{print $11}' | cut -d '[' -f2|cut -d ']' -f1 | grep -v - | awk '{sum+=$1} END {printf ("%.2f\n",sum*8/60/1024/1024*1.09)}' `TOTALBYTE2=`grep "$DATE" /data/nginxlog/bbb.log |awk '{print $11}' | cut -d '[' -f2|cut -d ']' -f1 |grep -v -| awk '{sum+=$1} END {printf ("%.2f\n",sum*8/60/1024/1024*1.09)}' `#TCP损耗+9%,最终单位是Mbpsecho "aaa.com : $TOTALBYTE1 Mbps"echo "bbb.com: $TOTALBYTE2 Mbps" Donate 打赏 微信支付 支付宝 本文作者: Shu Yu 本文链接: https://shenshengkun.github.io/posts/9dfl28ic.html 版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!