{"id":19657824,"url":"https://github.com/gdatasoftwareag/graylog-plugin-alertmanager-callback","last_synced_at":"2025-04-28T19:32:31.802Z","repository":{"id":89432452,"uuid":"169578954","full_name":"GDATASoftwareAG/Graylog-Plugin-AlertManager-Callback","owner":"GDATASoftwareAG","description":"A plugin for Graylog which provides the possibility to send alerts to the Prometheus AlertManager API.","archived":false,"fork":false,"pushed_at":"2020-08-20T10:54:19.000Z","size":215,"stargazers_count":22,"open_issues_count":3,"forks_count":5,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-05T10:33:26.569Z","etag":null,"topics":["alertmanager","graylog","graylog-callback","graylog-plugin","graylog2","prometheus","prometheus-alertmanager"],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/GDATASoftwareAG.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-02-07T13:49:18.000Z","updated_at":"2025-01-11T23:20:01.000Z","dependencies_parsed_at":null,"dependency_job_id":"f72dd31c-5fd8-4541-97d5-f8405f5fa5f0","html_url":"https://github.com/GDATASoftwareAG/Graylog-Plugin-AlertManager-Callback","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GDATASoftwareAG%2FGraylog-Plugin-AlertManager-Callback","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GDATASoftwareAG%2FGraylog-Plugin-AlertManager-Callback/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GDATASoftwareAG%2FGraylog-Plugin-AlertManager-Callback/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GDATASoftwareAG%2FGraylog-Plugin-AlertManager-Callback/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GDATASoftwareAG","download_url":"https://codeload.github.com/GDATASoftwareAG/Graylog-Plugin-AlertManager-Callback/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251375529,"owners_count":21579463,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["alertmanager","graylog","graylog-callback","graylog-plugin","graylog2","prometheus","prometheus-alertmanager"],"created_at":"2024-11-11T15:33:49.516Z","updated_at":"2025-04-28T19:32:31.796Z","avatar_url":"https://github.com/GDATASoftwareAG.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Build Status](https://travis-ci.org/GDATASoftwareAG/Graylog-Plugin-AlertManager-Callback.svg?branch=master)](https://travis-ci.org/GDATASoftwareAG/Graylog-Plugin-AlertManager-Callback)\n\u0026nbsp;\u0026nbsp;\u0026nbsp;[![Codacy Badge](https://api.codacy.com/project/badge/Grade/c3a48bd0e2e64a2499cc25c7d2a3abe6)](https://app.codacy.com/app/StefanHufschmidt/Graylog-Plugin-AlertManager-Callback?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=GDATASoftwareAG/Graylog-Plugin-AlertManager-Callback\u0026utm_campaign=Badge_Grade_Dashboard)\n\u0026nbsp;\u0026nbsp;\u0026nbsp;[![codecov](https://codecov.io/gh/GDATASoftwareAG/Graylog-Plugin-AlertManager-Callback/branch/master/graph/badge.svg)](https://codecov.io/gh/GDATASoftwareAG/Graylog-Plugin-AlertManager-Callback)\n\u0026nbsp;\u0026nbsp;\u0026nbsp;[![Known Vulnerabilities](https://snyk.io/test/github/GDATASoftwareAG/Graylog-Plugin-AlertManager-Callback/badge.svg)](https://snyk.io/test/github/GDATASoftwareAG/Graylog-Plugin-AlertManager-Callback)\n\n# Graylog AlertManager Notification Plugin   \nThis plugin can be used for connecting [Graylog](https://www.graylog.org/) alerts to the [Prometheus](https://prometheus.io/) [AlertManager](https://prometheus.io/docs/alerting/alertmanager/).\n\nThe plugin development is based on [Graylog2/graylog-plugin-sample](https://github.com/Graylog2/graylog-plugin-sample) which is mentioned in the [Graylog plugin documentation](http://docs.graylog.org/en/3.3/pages/plugins.html).\n\n**Note:** this plugin is currently only available as \"Legacy Alarm Callbacks\" item after adding it to Graylog\n![Legacy Alarm Callback](images/Legacy_Plugin.png)\n\nThe current plugin version 1.2.2 has Graylog 3.3.5 as target. The plugin version 1.2.1 (see releases) targets Graylog 2.5.0 and above.\n\n## Use Case\nYou are using a Graylog for checking the logs for errors, a Prometheus for checking the service metrics and you would like to organize your alerts with a AlertManager you need to get your Graylog alerts into the AlertManager.\nThis plugin provides the possibility to send your Graylog notifications with a AlertManager-Callback to your AlertManager.\n\n## AlertManager Endpoint\nThe plugin uses the `/api/v1/alerts` endpoint of AlertManager. You can find some documentation about this endpoint [here](https://prometheus.io/docs/alerting/clients/).\n\n## Provided Information\nThe plugin provides the AlertManager several information out of the box:\n* `stream_title` - The title of the stream triggering the alert condition in Graylog\n* `triggered_at` - The time of triggering the alert condition in Graylog\n* `triggered_rule_description` - The generated rule description of triggered alert condition in Graylog\n* `triggered_rule_title` - The title of alert condition rule in Graylog\n\nAll of those information will be added as annotation.\n\nThe values `startsAt`, `endsAt` and `generatorURL` will be transmitted to the AlertManager as well.\n`startsAt` will be set to the point of time when the condition triggered the alert.\n`endsAt` will be set to the point of time when the condition triggered the alert plus the set grace time which is configured for the alert.\n\nAdditionally you can configure your own custom annotations and labels which should be submitted to the AlertManager (see screenshot below).\nYou can use the [JMTE Template](https://cdn.rawgit.com/DJCordhose/jmte/master/doc/index.html) as you might already know from the [Graylog E-Mail Notification Callback](http://docs.graylog.org/en/2.5/pages/streams/alerts.html#email-alert-notification).\n\nList of provided keys you can use inside JMTE Templates:\n* `stream_url` - The stream url.\n* `stream` - The specific stream object. There you can use the properties of the stream object e.g. `stream.title`\n* `alertCondition` - The specific triggered alert condition. There you can use the properties of the alert condition oject e.g. `alertCondition.createdAt`\n* `check_result` - The specific check result. There you can use the properties of the check result object e.g. `check_result.triggeredAt`\n* `backlog` - A list containing messages matching the triggered condition if any. You can iterate through them with `${foreach backlog message}${message} ${end}`\n* `backlog_size` - The amount of matching messages.\n\n## How to deploy on Graylog\nYou can easily build the plugin by executing `./gradlew build -x check --no-daemon`. \nAfterwards there should be a `.jar` file inside the `build/libs/` directory.\nFollow the instructions mentioned [here](http://docs.graylog.org/en/3.3/pages/plugins.html#installing-and-loading-plugins) to deploy this `.jar` file.\n\n## How to develop locally\nYou can use Docker and Docker-Compose to test changes of this plugin locally by following these steps:\n1. Build the JAR\n2. Run `docker-compose up` inside the development directory\n3. Access your local Graylog instance web-interface at http://localhost:9000/\n4. You can configure an alert to be send to `http://alertmanager:9093/api/v1/alerts` and access the AlertManager via http://localhost:9093/\n\n## Screenshots\n![Configuration of Callback](images/New_AlertManager_Callback_Window.png)\n\n## Planned Features\n* Implementation of EventNotification for usage as non-legacy notification plugin\n\nYou would like to contribute anything? - Take a look at [CONTRIBUTING.md](CONTRIBUTING.md).\n\n## License\nSee [LICENSE](LICENSE)\n\n## Copyright\n\nCopyright (c) 2019-2020 G DATA CyberDefense AG and other authors.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgdatasoftwareag%2Fgraylog-plugin-alertmanager-callback","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgdatasoftwareag%2Fgraylog-plugin-alertmanager-callback","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgdatasoftwareag%2Fgraylog-plugin-alertmanager-callback/lists"}