Skip to content

armenzg/briar-patch

 
 

Repository files navigation

Briar Patch
-----------

Metrics, alerts and events framework

Using ZeroMQ on the inside, Briar Patch will be a way to allow multiple
incoming data streams all be handled/filtered/massaged and then consumed
by various workers as needed.

Yea, I don't know what it will be quite yet either...

Installation
------------

Briar-Patch is two distinct parts: the buildduty/kitten managment piece and
the metrics piece. Pick what piece you are working with and follow those
instructions below.

My primary dev environment is OS X, so I use Brew almost exclusively, so all
of the install notes below reference Brew.

Brew can be found at http://mxcl.github.com/homebrew/

Except for Python, which I kept at v2.7, everything else is as fresh as you
can stand.

For the buildduty part, you need to install:

  pip install ssh
  pip install boto
  pip install redis
  pip install requests
  pip install dnspython



For the metrics part, you need:

  pip install redis
  pip install requests
  pip install dnspython

  hg clone http://hg.mozilla.org/users/clegnitto_mozilla.com/mozillapulse
  cd mozillapulse
  python setup.py install
  cd ..


If you want to run your own instances of carbon and such:

  pip install whisper
  pip install carbon

  Configuring Graphite is almost an art form itself, for this initial testing I just stuck with
  the configuration they provide as an example (edited appropriately) ...

  cd /opt/graphite/conf
  cp storage-schemas.conf.example storage-schemas.conf
  cp carbon.conf.example carbon.conf

  I set the following in carbon.conf:
    STORAGE_DIR = /opt/graphite/storage
    LOCAL_DATA_DIR = /opt/graphite/storage/whisper
    LOG_DIR = /opt/graphite/log/
    PID_DIR = /opt/graphite/

  To start the carbon listener:

    carbon-cache.py --debug --config=/opt/graphite/conf/carbon.conf start

  To blow everything away and start collecting data fresh:

    rm -rf /opt/graphite/storage/whisper/*


Dependencies
------------

  Redis
    https://github.com/andymccurdy/redis-py

  Mozilla Pulse
    http://hg.mozilla.org/users/clegnitto_mozilla.com/mozillapulse/

  ZeroMQ
    http://zeromq.github.com/pyzmq/

  Graphite
    Carbon, Whisper and Graphite-Web
    http://graphite.wikidot.com/

  releng
    internal RelEng lib (currently no home)

  ssh
    https://github.com/bitprophet/ssh

  pyzmq
    https://github.com/zeromq/pyzmq

  requests
    https://github.com/kennethreitz/requests

  dnspython
    http://www.dnspython.org/

    

About

event and alert framework for RelEng systems

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published