bosun

module
v0.0.0-...-88d80bb Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 13, 2021 License: MIT

README

bosun

Bosun is a time series alerting framework developed by Stack Exchange. Scollector is a metric collection agent. Learn more at bosun.org.

Build Status

building

To build bosun and scollector, clone to $GOPATH/src/bosun.org:

$ go get bosun.org/cmd/bosun

bosun and scollector are found under the cmd directory. Run go build in the corresponding directories to build each project.

developing

Install:

  • npm install typescript@<version> -g to be able to compile the ts files to js files. The current version of typescript to install will be in the .tavis.yml file in the root of this repo.
  • go get github.com/mjibson/esc to embed the static files. Run go generate in cmd/bosun when new static assets (like JS and CSS files) are added or changed.

The w.sh script will automatically build and run bosun in a loop. It will update itself when go/js/ts files change, and it runs in read-only mode, not sending any alerts.

$ cd cmd/bosun
$ ./w.sh

Go Version:

  • See the version number in .travis.yml in the root of this repo for the version of Go to use. Generally speaking, you should be able to use newer versions of Go if you are able to build Bosun without error.

Miniprofiler:

  • Bosun includes miniprofiler in the web UI which can help with debugging. The key combination ALT-P will show miniprofiler. This allows you to see timings, as well as the raw queries sent to TSDBs.

Directories

Path Synopsis
Package version holds some version data common to bosun and scollector.
Package version holds some version data common to bosun and scollector.
web
Simple script to build bosun and scollector.
Simple script to build bosun and scollector.
cmd
backfill
Backfill denormalizes historic OpenTSDB data.
Backfill denormalizes historic OpenTSDB data.
bosun/conf/rule/parse
Package parse builds parse trees for configurations as defined by conf.
Package parse builds parse trees for configurations as defined by conf.
bosun/conf/template
Package template is a thin wrapper over go's text/template and html/template packages.
Package template is a thin wrapper over go's text/template and html/template packages.
bosun/database
Package database implements all persistent data access for bosun.
Package database implements all persistent data access for bosun.
bosun/expr/parse
Package parse builds parse trees for expressions as defined by expr.
Package parse builds parse trees for expressions as defined by expr.
bosun/sched/slack
Package slack is for creating slack notifications inside of Bosun templates
Package slack is for creating slack notifications inside of Bosun templates
scollector
Scollector is a metric collection agent for OpenTSDB 2.0 and Bosun.
Scollector is a metric collection agent for OpenTSDB 2.0 and Bosun.
scollector/conf
Package conf contains all of the configuration structs for scollector.
Package conf contains all of the configuration structs for scollector.
tsdbrelay
tsdbrelay relays OpenTSDB traffic to TSD and Bosun servers.
tsdbrelay relays OpenTSDB traffic to TSD and Bosun servers.
tsdbrelay/integrationTest
We are going to simulate a full multi-datacenter cluster: DC1: - tsdbrelay: :5555 - opentsdb: :5556 - bosun: :5557 DC2: - tsdbrelay :6555 - opentsdb :6556 - bosun: :6557
We are going to simulate a full multi-datacenter cluster: DC1: - tsdbrelay: :5555 - opentsdb: :5556 - bosun: :5557 DC2: - tsdbrelay :6555 - opentsdb :6556 - bosun: :6557
Package collect provides functions for sending data to OpenTSDB.
Package collect provides functions for sending data to OpenTSDB.
Package graphite defines structures for interacting with a Graphite server.
Package graphite defines structures for interacting with a Graphite server.
Package metadata provides metadata information between bosun and OpenTSDB.
Package metadata provides metadata information between bosun and OpenTSDB.
Package opentsdb defines structures for interacting with an OpenTSDB server.
Package opentsdb defines structures for interacting with an OpenTSDB server.
Package slog provides a cross-platform logging interface.
Package slog provides a cross-platform logging interface.
Package snmp provides an implementation of the SNMP specification.
Package snmp provides an implementation of the SNMP specification.
asn1
Package asn1 implements parsing of DER-encoded ASN.1 data structures, as defined in ITU-T Rec X.690.
Package asn1 implements parsing of DER-encoded ASN.1 data structures, as defined in ITU-T Rec X.690.
mib
Package mib parses modules of the virtual management information store.
Package mib parses modules of the virtual management information store.
Package util defines utilities for bosun.
Package util defines utilities for bosun.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL