Server metrics vid lasttester samt presentation

Permalänk
Medlem

Server metrics vid lasttester samt presentation

Jag undrar om någon känner till ett bra verktyg för att presentera data från testkörningar på ett smidigt sätt.
Det jag behöver är loggar, hur systemet mår etc.

Idag så kör jag en bibba perlscript som gör det som efterfrågas dvs.
Startar sar,top, tcpdumpar på alla maskiner som jag last testar.
När testet är klart så samlas all data ihop och packas ner i en zipfil för arkivering eller analys.

Jag har funderat på att scripta någon typ av SQLLIITE implementation så fyller upp en databas med primärnycklar som sitter ihop med testfallet och sen kanske sätta på nått gui som presenterar datan....

Tänkte bara kolla innan jag börjar rita på någon lösning om det finns nått verktyg som skulle kunna användas i dess ställe?

Visa signatur

Ei bor i stockholm och tar inget ansvar för allt som han säger
7900, 64 gig ram, radeon r290
Solna arbetscenter

Permalänk

statsd + graphite är väl standardverktygen nuförtiden.

Permalänk
Hedersmedlem

Är det inte lättare att sätta upp t.ex. Zenoss eller Observium mot servrarna du kör testerna på, sen använda något av nämnda systems API för att hämta ut prestanda-graferna över perioden du körde testerna? Då får du ju cpuload/minnesanvändning/nätverksstatistik/diskload färdigt och grafat.

Permalänk
Medlem

Nice, jag jobbar mest med interna applikationer men sen förväntar sig folk att man även ska hålla kolla på allt annat också. Även om jag inte har root på maskinerna....

Observium verkar nice och statsd tittade jag lite på också.
Vi har funderat lite på att köra graphite eller influxdb för lite andra metrics också.

Visa signatur

Ei bor i stockholm och tar inget ansvar för allt som han säger
7900, 64 gig ram, radeon r290
Solna arbetscenter

Permalänk
Hedersmedlem
Skrivet av Ei:

Nice, jag jobbar mest med interna applikationer men sen förväntar sig folk att man även ska hålla kolla på allt annat också. Även om jag inte har root på maskinerna....

Observium verkar nice och statsd tittade jag lite på också.
Vi har funderat lite på att köra graphite eller influxdb för lite andra metrics också.

Jag är personligen inget fan av Graphite. Vill du ha något modernt Metrics-system så kika på Influxdb + Grafana

Kör det på jobbet för ett nytt Javabaserat-backend projekt, det är extremt flexibelt och lätt att skapa egna grafer och dashboards. Att det i princip är realtid skadar inte heller.

Sen ska man ha i åtanke att InfluxDB är ett väldigt nytt projekt och inte särskilt stabilt i dagsläget. Räkna med att krascher kan uppstå och risken att förlora data. Är metricsen extremt viktiga så är nog ändå Graphite det bättre valet.

Permalänk
Medlem

Jo vi kickar lite på influxdb + Grafana för daily operations.
Vi har lite olika grejer idag som Datawatch etc etc. Men mest så kör vi allt i en egen SQL DB.

Får titta lite på Apiet för observium.

Ett av problem är att jag ofta kör multipla testfall i snabb följd och när man testat i en hel dag så börjar allt flyta samman vad det gäller tider etc. Så det jag gör idag är bara att jag sparar undan namnet på min Zipfil som har allt för just testet som gick bra och lagrar den i all framtid.

Visa signatur

Ei bor i stockholm och tar inget ansvar för allt som han säger
7900, 64 gig ram, radeon r290
Solna arbetscenter

Permalänk
Hedersmedlem
Skrivet av Ei:

Jo vi kickar lite på influxdb + Grafana för daily operations.
Vi har lite olika grejer idag som Datawatch etc etc. Men mest så kör vi allt i en egen SQL DB.

Får titta lite på Apiet för observium.

Ett av problem är att jag ofta kör multipla testfall i snabb följd och när man testat i en hel dag så börjar allt flyta samman vad det gäller tider etc. Så det jag gör idag är bara att jag sparar undan namnet på min Zipfil som har allt för just testet som gick bra och lagrar den i all framtid.

Jo, intressant use-case dedär. Jag vet att iaf för Zenoss API så går det ta ut grafer för en specifik timerange (och få ut som rena .png filer). Så det bör bara vara att logga start och slut för ditt test, köra ett api-anrop för den specifika timerangen och ladda hem graferna för det.

Permalänk
Medlem

Blev fett imponerad av observarium, var enkelt att sätta upp dock så verkar snmp för Linux maskiner vara rätt begränsat.
Zenoss testade jag också att labba med och man ska visst kunna köra ssh hämtning där så man får lite mer information.

Observarium skulle jag iallafall vilja slänga upp på en av våra servrar måste bara övertyga säkerhets avdelningen...
Sen är influx + grafana nått som kommer skulle jag gissa på, när jag får tid att labba med det.
Får också tittat på statsd.

Dock tror jag inte att zenoss eller observarium klarar att polla tillräckligt ofta under testerna. Jag pollar varje sekund för att se hur allt ser ut hela tiden.

Visa signatur

Ei bor i stockholm och tar inget ansvar för allt som han säger
7900, 64 gig ram, radeon r290
Solna arbetscenter

Permalänk
Hedersmedlem
Skrivet av Ei:

Blev fett imponerad av observarium, var enkelt att sätta upp dock så verkar snmp för Linux maskiner vara rätt begränsat.
Zenoss testade jag också att labba med och man ska visst kunna köra ssh hämtning där så man får lite mer information.

Observarium skulle jag iallafall vilja slänga upp på en av våra servrar måste bara övertyga säkerhets avdelningen...
Sen är influx + grafana nått som kommer skulle jag gissa på, när jag får tid att labba med det.
Får också tittat på statsd.

Dock tror jag inte att zenoss eller observarium klarar att polla tillräckligt ofta under testerna. Jag pollar varje sekund för att se hur allt ser ut hela tiden.

Då är nog helt klart InfluxDB + Grafana bästa vägen att gå (eller såklart statsd + graphite), de är rena Metrics-system och fixar utan problem pollning ner på sekunden. Zenoss ligger var 5 minut default (iaf för graferna), vet ej hur ofta observium pollar..

Tänk på att Zenoss och Observium aktivt hämtar data, men Influx kräver att du aktivt skjuter in data (t.ex. med collectd eller statsd)

Du kan skapa egna script och confa SNMPd att köra dem när man frågar efter specifika oid's, så du måste inte använda dig av SSH.