Metadata-Version: 2.0
Name: zmon-worker
Version: 0.1
Summary: ZMON Worker Monitor
Home-page: https://github.com/zalando/zmon-worker
Author: Henning Jacobs
Author-email: henning.jacobs@zalando.de
License: Apache License 2.0
Keywords: zalando zmon zmon2 worker component monitoring infrastructure
Platform: All
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Dist: CherryPy
Requires-Dist: Jinja2
Requires-Dist: MarkupSafe
Requires-Dist: PyMySQL (==0.6.1)
Requires-Dist: PyYAML
Requires-Dist: Yapsy (>=1.10.423)
Requires-Dist: boto3
Requires-Dist: cassandra-driver (==2.7.2)
Requires-Dist: dnspython
Requires-Dist: dogpile.cache
Requires-Dist: eventlog-writer (==0.4.5)
Requires-Dist: functional
Requires-Dist: numpy
Requires-Dist: prometheus-client
Requires-Dist: psycopg2
Requires-Dist: pymongo (==3.0.3)
Requires-Dist: pysnmp
Requires-Dist: python-ldap (==2.4.19)
Requires-Dist: python-snappy
Requires-Dist: pythonwhois (==2.4.3)
Requires-Dist: pytz
Requires-Dist: redis
Requires-Dist: requests
Requires-Dist: setproctitle
Requires-Dist: stups-tokens
Requires-Dist: subprocess32
Requires-Dist: suds
Requires-Dist: timeperiod2 (==0.1)

===========
ZMON Worker
===========

.. image:: https://travis-ci.org/zalando/zmon-worker.svg?branch=master
   :target: https://travis-ci.org/zalando/zmon-worker
   :alt: Build Status

.. image:: https://coveralls.io/repos/zalando/zmon-worker/badge.svg
   :target: https://coveralls.io/r/zalando/zmon-worker
   :alt: Coverage Status

ZMON's Python worker is doing the heavy lifting of executing tasks against entities, and evaluating all alerts assigned to check.
Tasks are picked up from Redis and the resulting check values plus alert state changes are written back to Redis.

Local Development
=================

Start Redis on localhost:6379:

.. code-block:: bash

    $ docker run -p 6379:6379 -it redis

Install the required development libraries:

.. code-block:: bash

    $ sudo apt-get install build-essential python2.7-dev libpq-dev libldap2-dev libsasl2-dev libsnappy-dev
    $ sudo pip2 install -r requirements.txt

Start the ZMON worker process:

.. code-block:: bash

    $ python2 -m zmon_worker_monitor

You can query the worker monitor via RPC:

.. code-block:: bash

    $ python2 -m zmon_worker_monitor.rpc_client http://localhost:23500/zmon_rpc list_stats

Running Unit Tests
==================

.. code-block:: bash

    $ sudo pip2 install -r test_requirements.txt
    $ python2 setup.py test


Building the Docker Image
=========================

.. code-block:: bash

    $ docker build -t zmon-worker .
    $ docker run -it zmon-worker

Running the Docker image
========================

The Docker image supports many configuration options via environment variables.
Configuration options are explained in the `ZMON Documentation <http://zmon.readthedocs.org/en/latest/installation/configuration.html#worker>`_.


