3

我有以下 munin 生成的 nginx 请求图:

nginx 按天请求

y轴上的“m”是什么意思?

/usr/share/munin/plugins/nginx_request 的 nginx munin 插件正在提取:

if ($response->content =~ /^\s+(\d+)\s+(\d+)\s+(\d+)/m) {
    print "request.value $3\n";

这意味着它正在使用nginx_status的第三个组件,这似乎是累积的请求总数。这是来自同一服务器的示例执行:

$ curl http://127.0.0.1/nginx_status
Active connections: 1 
server accepts handled requests
 2936 2936 4205 
Reading: 0 Writing: 1 Waiting: 0 

munin nginx 插件将以下内容传递给 rrdtool:

print "graph_title Nginx requests\n";
print "graph_args --base 1000\n";
print "graph_category nginx\n";
print "graph_vlabel Request per second\n";
print "request.label req/sec\n";
print "request.type DERIVE\n";
print "request.min 0\n";
print "request.label requests port $port\n";
print "request.draw LINE2\n";
4

1 回答 1

5

“m”是单位的“milli”前缀。因此,400 m 意味着 0.400。

默认情况下,RRDTool 使用 SI 前缀——2000 显示为 2k,0.01 显示为 10m,依此类推。这通常不是问题,除非没有单位或被测量的东西在小数部分中没有意义。

停止这种行为的方法是不使用 GPRINT 中的 %s(这会修复图例),并使用 --units-exponent=0 选项(这会修复 Y 轴)。不过,我不知道是否有可能让 munin 做到这一点。不过,您也许可以修改插件以将“--units-exponent 0”添加到 graph_args。

于 2014-02-12T02:45:49.863 回答