Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: add resource page and update Bosun.org site #1272

Merged
merged 3 commits into from
Aug 26, 2015
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
cmd/bosun/dev.conf
docs/.jekyll-metadata
30 changes: 6 additions & 24 deletions cmd/scollector/doc.go
Original file line number Diff line number Diff line change
Expand Up @@ -206,30 +206,12 @@ AWS (array of table, keys are AccessKey, SecretKey, Region): AWS hosts to poll.
Region = "somewhere"


Process (array of table, keys are Command, Name, Args for Linux, and Name
for Windows): processes to monitor. Name is optional, and defaults to Command.

# Linux
[[Process]]
Command = "redis-server *:6379"
Name = "redis-main"
[[Process]]
Command = "redis-server *:6380"
Name = "redis-slave"

# Windows
[[Process]]
Name = "^java"
[[Process]]
Name = "^powershell"

ProcessDotNet (array of table, keys are Name): .NET processes to monitor
on Windows.

[[ProcessDotNet]]
Name = "^w3wp"
[[ProcessDotNet]]
Name = "^Scheduler"
Process: processes to monitor.

ProcessDotNet: .NET processes to monitor on Windows.

See http://bosun.org/scollector/process-monitoring for details about Process and
ProcessDotNet.

HTTPUnit (array of table, keys are TOML, Hiera): httpunit TOML and Hiera
files to read and monitor. See https://github.com/StackExchange/httpunit
Expand Down
6 changes: 6 additions & 0 deletions docs/_config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
markdown: redcarpet
exclude:
- build.sh
- build.go
- docker.sh
- .gitignore
18 changes: 9 additions & 9 deletions docs/_layouts/default.html
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
<link rel="stylesheet" href="/styles/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<link rel="shortcut icon" href="/public/favicon.ico">

<!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.min.js"></script>
Expand Down Expand Up @@ -228,24 +228,24 @@
</ul>
<ul class="nav navbar-nav navbar-right">
<li>
<a href="/media.html">Media</a>
<a href="/resources">Resources</a>
</li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li>
<a href="/downloads.html">Download</a>
<a href="/downloads">Download</a>
</li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Documentation <span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="/quickstart.html">Quick Start</a></li>
<li><a href="/expressions.html">Expression Language</a></li>
<li><a href="/configuration.html">Configuration</a></li>
<li><a href="/usage.html">Usage</a></li>
<li><a href="/examples.html">Examples</a></li>
<li><a href="/api.html">API</a></li>
<li><a href="/quickstart">Quick Start</a></li>
<li><a href="/expressions">Expression Language</a></li>
<li><a href="/configuration">Configuration</a></li>
<li><a href="/usage">Usage</a></li>
<li><a href="/examples">Examples</a></li>
<li><a href="/api">API</a></li>
</ul>
</li>
</ul>
Expand Down
10 changes: 5 additions & 5 deletions docs/expressions.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@ title: Expression Documentation
<div class="row">
<div class="col-sm-3" >
<div class="sidebar" data-spy="affix" data-offset-top="0" data-offset-bottom="0" markdown="1">

* Some TOC
{:toc}

</div>
</div>

Expand Down Expand Up @@ -79,7 +79,7 @@ alert haproxy_session_limit {

We don't need to understand everything in this alert, but it is worth highlighting a few things to get oriented:

* `haproxy_session_limit` This is the name of the alert, an alert instance is uniquely identified by its alertname and group, i.e `haproxy_session_limit{host=lb,pxname=http-in,tier=2}`
* `haproxy_session_limit` This is the name of the alert, an alert instance is uniquely identified by its alertname and group, i.e `haproxy_session_limit{host=lb,pxname=http-in,tier=2}`
* `$notes` This is a variable. Variables are not smart, they are just text replacement. If you are familiar with macros in C, this is a similar concept. These variables can be referenced in notification templates which is why we have a generic one for notes
* `q("sum:haproxy.frontend.scur{host=*,pxname=*,tier=*}", "5m", "")` is an OpenTSDB query function, it returns *N* series, we know each series will have the host, pxname, and tier tag keys in their group based on the query.
* `max(...)` is a reduction function. It takes each **series** and **reduces** it to a **number** (See the Data types section above).
Expand Down Expand Up @@ -305,7 +305,7 @@ Alert if more than 50% of servers in a group have ping timeouts
# so we need to *reduce* each series values of each group into a single number:
$max_timeout = max($timeout)
# Max timeout is now a group of results where the value of each group is a number. Since each
# group is an alert instance, we need to regroup this into a sigle alert. We can do that by
# group is an alert instance, we need to regroup this into a sigle alert. We can do that by
# transposing with t()
$max_timeout_series = t("$max_timeout", "")
# $max_timeout_series is now a single group with a value of type series. We need to reduce
Expand Down Expand Up @@ -380,7 +380,7 @@ Returns all results in seriesSet that are a subset of numberSet and have a non-z

Returns the first count (scalar) results of number.

## lookup(table string, key string) numberSet
## lookup(table string, key string) numberSet

Returns the first key from the given lookup table with matching tags.

Expand Down
8 changes: 3 additions & 5 deletions docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,15 +19,15 @@ order: 1
<div class="row" style="padding-top: 75px;">
<div class="col-md-4">
<h3>Try It</h3>
<p>Want to jump right in? Follow our <strong><a href="/quickstart.html">quick start tutorial</a></strong> to get Bosun, OpenTSDB, and scollector up quickly using our published docker images.</p>
<p>Want to jump right in? Follow our <strong><a href="/quickstart">quick start tutorial</a></strong> to get Bosun, OpenTSDB, and scollector up quickly using our published docker images.</p>
</div>
<div class="col-md-4">
<h3>Download It</h3>
<p>Download the prebuilt binaries for <strong><a href="/downloads.html">Bosun</a></strong> and our optional but valuable monitoring agent (Currently works only with OpenTSDB) <strong><a href="/scollector">scollector</a></strong> for Windows, Linux, and Mac.</p>
<p>Download the prebuilt binaries for <strong><a href="/downloads">Bosun</a></strong> and our optional but valuable monitoring agent (Currently works only with OpenTSDB) <strong><a href="/scollector">scollector</a></strong> for Windows, Linux, and Mac.</p>
</div>
<div class="col-md-4">
<h3>Get Help</h3>
<p>Join us in our Slack room. <a href="/slackInvite.html">Get an invite.</a> You can <strong><a href="https://github.com/bosun-monitor/bosun/issues">open issues on GitHub</a></strong> to report bugs or discuss new features.</p>
<p>Join us in our Slack room. <a href="/slackInvite">Get an invite.</a> You can <strong><a href="https://github.com/bosun-monitor/bosun/issues">open issues on GitHub</a></strong> to report bugs or discuss new features.</p>
</div>
</div>
<div class="row" style="padding-top: 75px"><h2 class="text-center feature-header">Features</h2></div>
Expand Down Expand Up @@ -93,5 +93,3 @@ order: 1
</div>
</div>
</div>


2 changes: 1 addition & 1 deletion docs/media.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,4 +48,4 @@ title: Media
<a class="carousel-control left" href="#myCarousel" data-slide="prev"><span class="glyphicon glyphicon-chevron-left text-muted"></span></a>
<a class="carousel-control right" href="#myCarousel" data-slide="next"><span class="glyphicon glyphicon-chevron-right text-muted"></span></a>
</div>
</div>
</div>
9 changes: 4 additions & 5 deletions docs/quickstart.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,10 @@ redirect_from: /gettingstarted.html
<div class="row">
<div class="col-sm-3" >
<div data-spy="affix" data-offset-top="0" data-offset-bottom="0" markdown="1">

* Some TOC
{:toc}

</div>
</div>

Expand Down Expand Up @@ -78,7 +78,7 @@ For the purpose of this demo, click on the Expression button.

### Expression

The expression page allows us to tweak the data set for our query. The expression bar should currently have a line that begins with “q(“sum:rate…” This is the recipe that tells Bosun you’re looking for the os.cpu metric for the past 1 hour. If you click the “show” button under the result column in the Queries section, you will see all of the data points as they were graphed. Each data point is a timestamp and a value.
The expression page allows us to tweak the data set for our query. The expression bar should currently have a line that begins with “q(“sum:rate…” This is the recipe that tells Bosun you’re looking for the os.cpu metric for the past 1 hour. If you click the “show” button under the result column in the Queries section, you will see all of the data points as they were graphed. Each data point is a timestamp and a value.

In the course of making an alert, however, we are probably not interested in a huge set of numbers. We might instead want something like the average.

Expand Down Expand Up @@ -160,7 +160,7 @@ See the [scollector docs](http://godoc.org/bosun.org/cmd/scollector) for more in
Next to OpenTSDB, Bosun also supports querying Graphite and Logstash-Elasticsearch.
You can execute, view and graph expressions, develop and run Graphite/LS alerting rules, get notifications and use the dashboard.
The OpenTSDB specific feature, such as data proxying and the built in general purpose graphing interface don't apply here.
The alerting rules look the same, in fact the only difference is you will query data using [graphite specific functions](http://bosun.org/expressions.html#graphite-query-functions) such as graphiteQuery and graphiteBand.
The alerting rules look the same, in fact the only difference is you will query data using [graphite specific functions](http://bosun.org/expressions#graphite-query-functions) such as graphiteQuery and graphiteBand.

Start Graphite in docker:

Expand Down Expand Up @@ -199,4 +199,3 @@ the 4th argument of the graphite function is the format of how to parse the seri
{% endraw %}
</div>
</div>

66 changes: 66 additions & 0 deletions docs/resources.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
---
layout: default
title: Resources
---
&nbsp;

## Getting Started

### [Installing Bosun for Production](https://medvedev.io/blog/posts/2015-06-21-bosun-install-1.html "Installing Bosun for production") by Dima Medvedev
> A detailed walk-through of installing Bosun and OpenTSDB using Apache Ambari to setup HBase/Hadoop. See also [these snippets](https://gist.github.com/gbrayut/3af4bcd0458d2aa57dd2) for using Cloudera CDH 5.4.4 on RHEL 6.

### [Bosun, Time Series, and OpenTSDB's Data Model](https://www.youtube.com/watch?v=DVavDN8tyIc) video by Kyle Brandt
> An introduction to the data model of Bosun’s primary time series backend OpenTSDB. Time series, Metrics and Tags, Aggregation, Rate Calculation, and Downsampling.

### Docker images
> There is a [full Bosun](https://hub.docker.com/r/stackexchange/bosun/) image that can be used for testing (Not recommended for production use), and an [OpenTSDB only](https://hub.docker.com/r/petergrace/opentsdb-docker/) image if desired.

### Chef Cookbooks by ptqa
> There is a cookbook for using Chef to deploy [scollector](https://supermarket.chef.io/cookbooks/scollector) and another work in progress for deploying [Bosun](https://github.com/ptqa/chef-bosun).

### Slack Chat Room and Questions on Stack Overflow and Server Fault
> If you have questions you can get an invite to [https://bosun.slack.com/](http://bosun.org/slackInvite) or use the Bosun tag on [Stack Overflow](http://stackoverflow.com/questions/tagged/bosun) or [Server Fault](http://serverfault.com/questions/tagged/bosun)

&nbsp;

## Presentations

### [Monitorama 2015 (PDX)](https://vimeo.com/131581326) by Kyle Brandt
> This presentation has screencasts of building an alert starting about 15 minutes in. The first 15 minutes explain some of the design principles behind Bosun. After the first screen cast of building an alert there are also some example alerts.

### An overview of creating [Scollector](http://bit.ly/2015AUG04) and [Bosun](http://go-talks.appspot.com/github.com/captncraig/presentations/bosun/bosun.slide#1) by Craig Peterson and Greg Bray
> Presentation give to the Utah Gophers meetup about creating a monitoring and alerting system in Go.

### [LISA 2014](https://www.usenix.org/conference/lisa14/conference-program/presentation/brandt) by Kyle Brandt
> This was the first presentation on Bosun which was given right after the initial release. A great introduction to the underlying thoughts on problems with alerting and how Bosun solves them.

&nbsp;

## Libraries and Collectors

### [BosunReporter.NET](https://github.com/bretcope/BosunReporter.NET) by Bret Copeland
> A .NET client to send metrics to Bosun/OpenTSDB. It is designed to encourage best-practices while making it easy to create counters and gauges, including multi-aggregate gauges.

### [Bosun collect package](http://godoc.org/bosun.org/collect)
> A Go package used by Bosun, scollector, and [various other applications](http://godoc.org/bosun.org/collect?importers) to send metrics to Bosun/OpenTSDB. Includes limited support for multi-aggregate gauges.

### [httpUnit](http://godoc.org/github.com/StackExchange/httpunit)
> A Go package and command line tool used by scollector to send HTTP, HTTPS, and TCP test results to Bosun.

### [bosun-jmx](https://github.com/PeterGrace/bosun-jmx) by Peter Grace
> A external collector that relays JMX metrics to Bosun/OpenTSDB via scollector. Also a good starting point for a custom Java collector.

### [go-metrics-bosun](https://bitbucket.org/oneoffcode/go-metrics-bosun/src) by Richard Bucker
> A Bosun port for the [go-metrics](https://github.com/rcrowley/go-metrics) library based on Coda Hale's [Metrics](https://github.com/dropwizard/metrics) library.

### [vertx-bosun](https://github.com/cyngn/vertx-bosun) by Jeremy Truelove
> Sends metrics from [Vert.x](http://vertx.io/) applications to Bosun.

### [ekg-bosun](https://hackage.haskell.org/package/ekg-bosun)
> Send [ekg](https://github.com/tibbe/ekg) metrics from Haskell applications to Bosun.

_See also the list of built-in collectors included with [scollector](http://bosun.org/scollector/)_

&nbsp;

## [Screenshots and other Media](/media)
Loading