2015-08-13 13 views
5

Ich bin Docker Container für bosun laufen. Ich möchte die Graphite Metrics mit Bosun integrieren.
Welche Konfigurationsänderungen müssen dafür vorgenommen werden?Integrieren Sie Graphite Metrics mit Bosun

+0

Nur ein Ticket für die gleiche Sache geöffnet! https://github.com/bosun-monitor/bosun/issues/1250 – sbose

Antwort

3

Gemäß der Dokumentation, die Sie verknüpft, müssen Sie die graphiteHost in der Config gesetzt:

graphiteHost: ip, Host-Name, IP: Port, Hostname: Port oder eine URL, Standardwerte Standard http/https-Ports, standardmäßig auf "/ render" Pfad. All Nicht-Null-Pfad (auch „/“ überschreibt Pfad)

Die Grafik Seite und Artikel Seite in Bosun nur arbeiten mit OpenTSDB als Backend. Sie können jedoch weiterhin die Ausdrucksseite, das Dashboard und den Konfigurationseditor verwenden. Wenn Sie Ausdrücke verwenden, die seriesSet als graphite query functions zurückgeben, wird auf dem Ausdruck tabe eine Diagrammregisterkarte angezeigt. Sie können auch die Template-Funktionen .Graph und .GraphAll mit Graphit verwenden. Es ist also weitgehend funktional.

Es gibt auch einen example graphite alert im examples Teil der Dokumentation.

+0

danke @Kyle , um die graphitHost einzustellen, welche Konfigurationsdatei bearbeitet werden muss? – s28

+1

Die Konfigurationsdatei von Bosun, die auch alle Warnregeln und Vorlagen enthält. Der Speicherort der Datei wird angegeben, indem ein Wert an das Flag '-c' des Befehls bosun übergeben wird:' ./bosun -h Verwendung von ./bosun: -c = "dev.conf": Speicherort der Konfigurationsdatei –

4

@ kyle-brandt's Antwort ist in Ordnung und ich gab ihm eine Verbesserung, aber es und die Bosun-Dokumentation erklären nicht genug, wie man einen Graphite verwendet, den Sie nicht hosten, d. Hostedgraphite.com. Mit den Docs und einigen Versuchen und Fehlern habe ich die Dinge herausgefunden. Also hier gehts:

  1. Machen Sie einen Graphit-API-Schlüssel: http://docs.hostedgraphite.com/advanced/access-keys.html (Sie sollten IP-Adressen Whitelist). Nehmen wir an, Sie haben https://www.hostedgraphite.com/deadbeef/431-831/graphite/.
  2. erstellen data.conf mit:

    tsdbHost = localhost:4242 stateFile = /data/bosun.state graphiteHost = https://www.hostedgraphite.com/deadbeef/431-831/graphite/render

  3. Starten Sie den Docker Behälter: docker run -d \ -p 80:8070 \ --name=bosun \ -v `pwd`/bosun.conf:/data/bosun.conf \ stackexchange/bosun Bitte beachte, dass ich nicht die 4242-Port-Mapping tat, weil ich meine Daten nur von hostedgraphite.com und ich bekommen 8070 bis 80 zugeordnet, so dass ich den Port nicht angeben muss, wenn ich im Browser zu Bosun gehe.
  4. Hinzufügen von Ausdrücken: Die docs sagen zu verwenden GraphiteQuery aber das hat nicht für mich funktioniert, graphite arbeitete stattdessen. Zum Beispiel: graphite("my.long.metric.name.for.some.method", "10m", "", ""). Es gibt auch einen example graphite alert im examples Teil der Dokumentation (Danke @ Kyle-Brandt).
+0

sehr geschätzt, die Bosun Docs fallen hier wirklich auseinander. Sie können auch die Konfiguration in Ihrem Live-Container (was offensichtlich kurzfristig ist) mit 'docker exec -it bash' dann ein bisschen' export TERM = xterm' 'nano/data/boson.conf' und' kill -HUP bearbeiten 1' oder einfach 'supervisorctl neustarten bosun' – keen