Collectd
Sisukord
Sissejuhatus
Collectd on klient-server töövahend erinevate mõõtemeetrikute korjamiseks ja salvestamiseks. Tegemist on ühe süsteemis töötava deemoniga, mille funktsionaalsus ehk kas tegemist serveri, klienti, proxyga saavutatakse erinevate pluginate vahendusel. Samamoodi on kõik info mida süsteemist korjatakse seadistatav läbi erinevate pluginate.
Mõned lihtsad asjad mida annab collect abil koguda on nt cpu, mälu ja võrgu kohta käiv info.
Collectd deemon ise vaid kogub ja salvestab infot ning graafikute loomiseks on vaja eraldi rakendust. Collectd töövoogu iseloomustab järgnev pilt.
Paigaldamine
Debianis
# apt-get install collectd
client
LoadPlugin "cpu" # protsessori statistika
LoadPlugin "memory" # mälu
LoadPlugin "interface" # võrguseadmed
# välistame teatud võrguseadmete graafikute joonistamise, vastupidise saavutamiseks IgnoreSelected false
<Plugin interface>
Interface lo
Interface sit0
IgnoreSelected true
</Plugin>
LoadPlugin "network"
# saadame kõik info enda collectd serverile, servereid võib olla seejuures mitu
<Plugin "network">
Server "collectd0.example.com"
</Plugin>
server
LoadPlugin "network"
<Plugin "network">
Listen "collectd0.example.com"
Listen "ff18::efc0:4a42"
</Plugin>
LoadPlugin "rrdtool"
<Plugin "rrdtool">
DataDir "/var/lib/collectd/rrd"
</Plugin>
Proxy
LoadPlugin "network" <Plugin "network"> Listen "collectgw.extern.example.com" Server "collectd1.intern.example.com" Forward true </Plugin>
Collectd web
Keerukamad kasutusjuhud
Kindlad protsessid
LoadPlugin processes <Plugin processes> Process uhttpd Process dnsmasq Process dropbear </Plugin>
https://collectd.org/wiki/index.php/Plugin:cURL/Config curli kasutamine veebit või failidest alginfo saamiseks
https://wiki.postgresql.org/images/b/bc/Pgconfeu12-collectd%2Bpsql.pdf postgresqli detailsem jälgimine
Temperatuurianduri andmed failist
Kasutusel on Beaglebone Black, mille GPIO külge on joodetud kaks temperatuuriandurit
Kaks andurit, kumbki annab eraldi failist väljundit
10-00080013237c 10-0008001327a7
Näiteks
# cat /sys/devices/w1_bus_master1/10-0008001327a7/w1_slave 24 00 4b 46 ff ff 09 10 53 : crc=53 YES 24 00 4b 46 ff ff 09 10 53 t=18187
seal t=17375 on temperatuur millikraadides.
Järgnev konfilõik loeb curliga failist info, korjab sellest regexpi abil millikraadides temperatuuri, ja viimaks teisendab millikraadid normaalseteks ühikuteks
# laadime vajalikud pluginad
LoadPlugin curl
LoadPlugin match_regex
LoadPlugin target_scale
<Plugin curl>
<Page "Cont1_T">
URL "file:///sys/devices/w1_bus_master1/10-0008001327a7/w1_slave"
<Match>
Regex "t=(-?[0-9]+)"
DSType "GaugeLast"
Type "temperature"
Instance "Andur 1"
</Match>
</Page>
<Page "Cont2_T">
URL "file:///sys/devices/w1_bus_master1/10-00080013237c/w1_slave"
<Match>
Regex "t=(-?[0-9]+)"
DSType "GaugeLast"
Type "temperature"
Instance "Andur 2"
</Match>
</Page>
</Plugin>
<Chain "PreCache">
<Rule "m_to_c">
<Match "regex">
Plugin "^curl$"
Type "^temperature$"
</Match>
<Target "scale">
Factor 0.001
</Target>
</Rule>
</Chain>