alertmanager2kafka

command module
v0.0.0-...-f3b1b33 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 13, 2021 License: Apache-2.0 Imports: 19 Imported by: 0

README

alertmanager2kafka

license DockerHub

This is a forked version of webdevops's alertmanager2es modified to work with Kafka instead of Elasticsearch.

alertmanager2kafka receives HTTP webhook notifications from AlertManager and inserts them into an Kafka index for searching and analysis. It runs as a daemon.

The alerts are stored in Kafka as alert groups.

Usage

Usage:
  alertmanager2kafka [OPTIONS]

Application Options:
      --debug             debug mode [$DEBUG]
  -v, --verbose           verbose mode [$VERBOSE]
      --log.json          Switch log output to json format [$LOG_JSON]
      --kafka.host=       Kafka host, eg. kafka-0:9092 [$KAFKA_HOST]
      --kafka.topic=      Kafka topic, eg. alertmanager [$KAFKA_TOPIC]
      --kafka.ssl.cert=   Kafka client SSL certificate file [$KAFKA_SSL_CERT]
      --kafka.ssl.key=    Kafka client SSL key file [$KAFKA_SSL_KEY]
      --kafka.ssl.cacert= Kafka server CA certificate file [$KAFKA_SSL_CACERT]
      --bind=             Server address (default: :9097) [$SERVER_BIND]

Help Options:
  -h, --help              Show this help message

Rationale

It can be useful to see which alerts fired over a given time period, and perform historical analysis of when and where alerts fired. Having this data can help:

  • tune alerting rules
  • understand the impact of an incident
  • understand which alerts fired during an incident

You can configure Kafkaconnect or some other Kafka consumer that will process events from Kafka and store them eg. in Elasticsearch.

Limitations

  • alertmanager2kafka will not capture silenced or inhibited alerts; the alert notifications stored in Elasticsearch will closely resemble the notifications received by a human.

Prerequisites

To use alertmanager2kafka, you'll need:

To build alertmanager2kafka, you'll need:

Building

git clone github.com/fpytloun/alertmanager2kafka
cd alertmanager2kafka
make vendor
make build

Configuration

alertmanager2kafka usage

alertmanager2kafka is configured using commandline flags. It is assumed that alertmanager2kafka has unrestricted access to your Elasticsearch cluster.

alertmanager2kafka does not perform any user authentication.

Run ./alertmanager2kafka -help to view the configurable commandline flags.

Example Alertmanager configuration
Receiver configuration
- name: alertmanager2kafka
  webhook_configs:
    - url: https://alertmanager2kafka.example.com/webhook
Route configuration

By omitting a matcher, this route will match all alerts:

- receiver: alertmanager2kafka
  continue: true

Metrics

alertmanager2kafka exposes Prometheus metrics on /metrics.

Example Elasticsearch queries

alerts.labels.alertname:"Disk_Likely_To_Fill_Next_4_Days"

Contributions

Pull requests, comments and suggestions are welcome.

Please see CONTRIBUTING.md for more information.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL