ntfy-alertmanager/README.md

97 lines
2.8 KiB
Markdown

# [ntfy-alertmanager]
[![builds.sr.ht status](https://builds.xenrox.net/~xenrox/ntfy-alertmanager/commits/master.svg)](https://builds.xenrox.net/~xenrox/ntfy-alertmanager/commits/master?)
A bridge between ntfy and Alertmanager.
## Installation
Simply use go build or the [docker image] with [docker-compose file].
`ntfy-alertmanager:latest` is built from the latest tagged release while
`ntfy-alertmanager:dev` is built from the master branch.
## Configuration
You can specify the configuration file location with the `--config` flag. By default
the configuration file will be read from `/etc/ntfy-alertmanager/config`. The format
of this file is [scfg].
ntfy-alertmanager has support for setting ntfy [priority] and [tags]. Define a
decreasing order of labels in the config file and map those labels to tags or priority.
- For priority the first found value will be chosen.
- Tags are added together.
Example:
```
# http listen address
http-address :8080
# Log level (either debug, info, warning, error)
log-level info
# When multiple alerts are grouped together by Alertmanager, they can either be sent
# each on their own (single mode) or be kept together (multi mode) (either single or multi; default is single)
alert-mode single
# Optionally protect with HTTP basic authentication
user webhookUser
password webhookPass
labels {
order "severity,instance"
severity "critical" {
priority 5
tags "rotating_light"
}
severity "info" {
priority 1
}
instance "example.com" {
tags "computer,example"
}
}
ntfy {
# URL of the ntfy topic - required
topic https://ntfy.sh/alertmanager-alerts
# ntfy access control (https://ntfy.sh/docs/config/#access-control)
user user
password pass
}
# When the alert-mode is set to single, ntfy-alertmanager will cache each single alert
# to avoid sending recurrences.
cache {
# How long messages stay in the cache for
duration 24h
# Interval in which the cache is cleaned up
cleanup-interval 1h
}
```
### Alertmanager config
```yaml
receivers:
- name: "ntfy"
webhook_configs:
- url: "http://127.0.0.1:8080"
http_config:
basic_auth:
username: "webhookUser"
password: "webhookPass"
```
## Contributing
Report bugs on the [issue tracker].
[ntfy-alertmanager]: https://hub.xenrox.net/~xenrox/ntfy-alertmanager/
[scfg]: https://git.sr.ht/~emersion/scfg
[priority]: https://ntfy.sh/docs/publish/#message-priority
[tags]: https://ntfy.sh/docs/publish/#tags-emojis
[issue tracker]: https://todo.xenrox.net/~xenrox/ntfy-alertmanager
[docker image]: https://hub.docker.com/r/xenrox/ntfy-alertmanager
[docker-compose file]: https://git.xenrox.net/~xenrox/ntfy-alertmanager/tree/master/item/docker/docker-compose.yml