A Notification plugin to integrate Graylog with PagerDuty as documented here.
Required Graylog version: 3.3 and later
As of Graylog version 4.0.0, PagerDuty notifications are integrated into the core product. Do not use the graylog-labs plugin on versions 4.x and above as it lacks support for new notification types.
Download the plugin
and place the .jar
file in your Graylog plugin directory. The plugin directory
is the plugins/
folder relative from your graylog-server
directory by default
and can be configured in your graylog.conf
file.
Restart graylog-server
and you are done.
After deploying the plugin, a new Notification type will be available to select in the alerts screen. For more information about setting up an alert please see.
The following configuration parameters are required,
- Routing Key: The PagerDuty Routing Key defined as "[...] the 32 character Integration Key for an integration on a service or on a global ruleset" here.
- Incident Key Prefix: The prefix to identify the event in PagerDuty.
- Client Name: A String to identify the integration in PagerDuty.
- Client URL: This will add a link to the desired destination URL that will be included in the event. The PagerDuty event will also include a direct link to a Graylog search query using this URL.
The following configuration parameters are optional,
-
Use Custom Incident Key: Enabling it will generate a custom deduplication key for correlating, the value will follow the format,
Incident Key Prefix/[Source Streams Separated by Comma]/Event Title
This is an example of a notification triggered from Graylog.
You can improve your development experience for the web interface part of your plugin dramatically by making use of hot reloading. To do this, do the following:
git clone https://github.com/Graylog2/graylog2-server.git
cd graylog2-server/graylog2-web-interface
ln -s $YOURPLUGIN plugin/
npm install && npm start
This project is using Maven 3 and requires Java 8 or higher.
- Clone this repository.
- Run
mvn package
to build a JAR file. - Optional: Run
mvn jdeb:jdeb
andmvn rpm:rpm
to create a DEB and RPM package respectively. - Copy generated JAR file in target directory to your Graylog plugin directory.
- Restart the Graylog.
We are using the maven release plugin:
$ mvn release:prepare
[...]
$ mvn release:perform
This sets the version numbers, creates a tag and pushes to GitHub. Travis CI will build the release artifacts and upload to GitHub automatically.