Home

Awesome

<img src="http://i.imgur.com/Ae5gQJZ.png" height="45" width="200" />

Seyren (/ˈsaɪ.rʌn/) is an alerting dashboard for Graphite. It supports the following notification channels:

#<img src="http://i.imgur.com/13nR3YA.png" height="200" width="280" />

Build Status Gitter chat

Prerequisites

Run

wget https://github.com/scobal/seyren/releases/download/1.5.0/seyren-1.5.0.jar
export GRAPHITE_URL=http://graphite.foohost.com:80
java -jar seyren-1.5.0.jar
open http://localhost:8080

To run seyren on another port:

export SEYREN_URL="http://localhost:8081/seyren"
java -jar seyren-1.5.0.jar -httpPort=8081

Config

The following options can be supplied as system properties or environment variables.

Base
Graphite
Email
[HTTP]
BigPanda.io

Use a Big Panda App Key as Target when adding a new subscription.

Flowdock

Use a Flow API token as Target when adding a new subscription.

HipChat
Hubot
IRCcat
PagerDuty
Pushover
Real-time metrics
Slack

The target for a Slack subscription will be the channel name (including the #, for example #channel). You can optionally suffix the channel name with ! and that will cause the alerts to include a @channel mention (for example #channel!).

SNMP
TEMPLATE
Twilio
Victorops
Proxy

The Proxy settings are changed by using JAVA_OPTS. It important that you exclude your graphite server or you will proxy these requests also.

Seyren API

See Seyren API

Chef

You can use Seyren Cookbook to deploy Seyren with Chef.

Docker

You can use the Docker Seyren Image to deploy a seyren instance in a docker container.

Docker compose

You can use docker-compose to create containers and hack seyren. First, you need to install Docker and Docker Compose. Then, you just need to start Docker Compose:

docker-compose up

and open http://localhost:8080/seyren. Graphite is available on http://localhost:8081/ with Basic Auth guest/guest.

Init script

Seyren-Init is an init.d script which allows you to start the service.

Development

Build Status

To run the acceptance tests with Maven:

mvn clean verify

To run the integration tests with Maven:

mvn clean verify -Pkarma

To fire-up the app using Maven and wait (meaning you can run the tests separately from your IDE):

mvn clean verify -Dwait

You should then be able to browse to http://localhost:8080/seyren and have a play.

To package up a new jar file without running the tests:

mvn package -DskipTests
# Set environment variables as needed.
java -jar seyren-web/target/seyren-web-*-war-exec.jar

Related projects