先上代码
#!/bin/bash
export PATH=/opt/ats/bin:$PATH
HONG ()
{
echo -e "\033[0;31;1m$*\033[0m"
}
LV ()
{
echo -e "\033[0;32;1m$*\033[0m"
}
if [ ! -x /opt/ats/bin/traffic_line ]
then
HONG "Warning: ats not found."
exit 1
fi
LV "###################################################"
HONG "统计参数:"
f=`traffic_line -r proxy.process.cache.bytes_used`
let used=$f/1073741824
if [ "$used" == 0 ];
then
used=`echo "${f}/1024/1024" | bc`
echo "现已用缓存容量为: ${used}M"
else
used=`echo "$f 1073741824" | awk '{printf("%0.3f\n",$1/$2)}'`
echo "现已用缓存容量为: ${used}G "
fi
j=`traffic_line -r proxy.process.cache.ram_cache.bytes_used`
k=`traffic_line -r proxy.config.cache.ram_cache.size` 新版本中没有
l=`echo "scale=2;$j/1024/1024/1024"|bc`
n=`echo "scale=2;$k/1024/1024/1024"|bc`
echo "内存缓存使用容量及总量为: ${l}/${n}(G)"
r=`traffic_line -r proxy.process.cache.direntries.used`
echo "当前缓存服务文件总数为: ${r}"
avg_size=`echo "$f/$r/1024"|bc`
echo "平均文件大小: $avg_size KB"
x=`traffic_line -r proxy.node.current_server_connections`
echo "到后端源的连接数为: ${x}"
y=`traffic_line -r proxy.node.current_client_connections`
echo "前端用户到ats的连接数为: ${y}"
z=`traffic_line -r proxy.node.user_agent_xacts_per_second `
echo "平均每秒处理的并发数为: ${z}"
w=`traffic_line -r proxy.node.client_throughput_out`
echo "当前输出的带宽流量为: ${w}"
p=`traffic_line -r proxy.node.cache_hit_ratio`
echo "当前缓存服务命中率为: ${p}"
q=`traffic_line -r proxy.node.bandwidth_hit_ratio`
echo "当前缓存服务带宽命中率为: ${q}"
m=`traffic_line -r proxy.node.cache_hit_mem_ratio`
echo "当前缓存内存命中率为: ${m}"
LV "###################################################"
grep "updated diags config" /opt/ats/var/log/trafficserver/diags.log | tail -5
LV "###################################################"
exit 0