21 lines
477 B
Ruby
21 lines
477 B
Ruby
loop do
|
|
`/run/current-system/sw/bin/unbound-control stats_noreset`
|
|
.lines
|
|
.filter { |l| l =~ /^total\./ }
|
|
.each { |l|
|
|
if l =~ /total\.(.+?)=([\d\.]+)/
|
|
name = $1
|
|
value = $2.to_f
|
|
if name =~ /\.avg$/ || name =~ /\.median$/ || name =~ /\.max$/ || name =~ /\.min$/
|
|
ty = "gauge"
|
|
else
|
|
ty = "derive"
|
|
value = value.to_i
|
|
end
|
|
puts "PUTVAL dnscache/unbound/#{ty}-#{name} N:#{value}"
|
|
end
|
|
}
|
|
|
|
sleep 10
|
|
end
|