Monitoring

Data for monitoring

  Now we monitor two types of events for monitoring: request and error. The first type is all requests, second is failed requests only. Every event is a point in the time series. The point is represented as the union of the following data:

  • series name (now requests and errors)

  • start request time

  • tags, indexed data in storage, dictionary: keys - string tag names, values - string, integer, float

  • fields, non-indexed data in storage, dictionary: keys - string tag names, values - string, integer, float

‘Requests’ series. Triggered on every request. Each point contains a data about corresponding request (execution time and etc).

  • tags

    tag name

    description

    service route status_code

    “luna-python-matcher” or “luna-matcher-proxy” concatenation of a request method and a request resource (POST:/matcher) http status code of response

  • fields

    fields

    description

    request_id execution_time

    request id request execution time

‘Errors’ series. Triggered on failed request. Each point contains error_code of luna error.

  • tags

    tag name

    description

    service route status_code error_code

    “luna_python_matcher” or “luna-matcher-proxy” concatenation of a request method and a request resource (POST:/matcher) http status code of response luna error code

  • fields

    fields

    description

    request_id

    request id

Every handler can add additional tags or fields.

Database

Monitoring is implemented as data sending to an influx database. You can set up your database credentials in configuration file in section “monitoring”.

Classes