2020-08-12 04:10:41 +08:00
|
|
|
# Webhooks Input Plugin
|
2016-05-27 23:27:54 +08:00
|
|
|
|
|
|
|
|
This is a Telegraf service plugin that start an http server and register multiple webhook listeners.
|
|
|
|
|
|
|
|
|
|
```sh
|
2017-11-08 05:54:36 +08:00
|
|
|
$ telegraf config -input-filter webhooks -output-filter influxdb > config.conf.new
|
2016-05-27 23:27:54 +08:00
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Change the config file to point to the InfluxDB server you are using and adjust the settings to match your environment. Once that is complete:
|
|
|
|
|
|
|
|
|
|
```sh
|
|
|
|
|
$ cp config.conf.new /etc/telegraf/telegraf.conf
|
|
|
|
|
$ sudo service telegraf start
|
|
|
|
|
```
|
|
|
|
|
|
2019-03-09 03:25:20 +08:00
|
|
|
|
|
|
|
|
### Configuration:
|
|
|
|
|
|
|
|
|
|
```toml
|
|
|
|
|
[[inputs.webhooks]]
|
|
|
|
|
## Address and port to host Webhook listener on
|
|
|
|
|
service_address = ":1619"
|
|
|
|
|
|
|
|
|
|
[inputs.webhooks.filestack]
|
|
|
|
|
path = "/filestack"
|
|
|
|
|
|
|
|
|
|
[inputs.webhooks.github]
|
|
|
|
|
path = "/github"
|
|
|
|
|
# secret = ""
|
|
|
|
|
|
|
|
|
|
[inputs.webhooks.mandrill]
|
|
|
|
|
path = "/mandrill"
|
|
|
|
|
|
|
|
|
|
[inputs.webhooks.rollbar]
|
|
|
|
|
path = "/rollbar"
|
|
|
|
|
|
|
|
|
|
[inputs.webhooks.papertrail]
|
|
|
|
|
path = "/papertrail"
|
|
|
|
|
|
|
|
|
|
[inputs.webhooks.particle]
|
|
|
|
|
path = "/particle"
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
### Available webhooks
|
2016-05-27 23:27:54 +08:00
|
|
|
|
2016-06-29 01:26:41 +08:00
|
|
|
- [Filestack](filestack/)
|
2016-05-27 23:27:54 +08:00
|
|
|
- [Github](github/)
|
2016-07-18 19:41:13 +08:00
|
|
|
- [Mandrill](mandrill/)
|
2016-05-27 23:27:54 +08:00
|
|
|
- [Rollbar](rollbar/)
|
2017-04-18 04:49:36 +08:00
|
|
|
- [Papertrail](papertrail/)
|
2017-11-17 08:03:19 +08:00
|
|
|
- [Particle](particle/)
|
|
|
|
|
|
2016-05-27 23:27:54 +08:00
|
|
|
|
2019-03-09 03:25:20 +08:00
|
|
|
### Adding new webhooks plugin
|
2016-05-27 23:27:54 +08:00
|
|
|
|
|
|
|
|
1. Add your webhook plugin inside the `webhooks` folder
|
|
|
|
|
1. Your plugin must implement the `Webhook` interface
|
|
|
|
|
1. Import your plugin in the `webhooks.go` file and add it to the `Webhooks` struct
|
|
|
|
|
|
|
|
|
|
Both [Github](github/) and [Rollbar](rollbar/) are good example to follow.
|