telegraf/plugins/inputs/webhooks/papertrail
Alexander Krantz f76729cfb9
feat: HTTP basic auth for webhooks (#9332)
Co-authored-by: Sebastian Spaink <3441183+sspaink@users.noreply.github.com>
2022-03-04 09:51:01 -06:00
..
README.md chore: clean up markdown lint errors input plugins w to z (#10166) 2021-11-24 11:50:22 -07:00
papertrail_test.go feat: more fields for papertrail event webhook (#9940) 2021-10-18 09:04:53 -05:00
papertrail_webhooks.go feat: HTTP basic auth for webhooks (#9332) 2022-03-04 09:51:01 -06:00
papertrail_webhooks_models.go Add input for receiving papertrail webhooks (#2038) 2017-04-17 13:49:36 -07:00

README.md

papertrail webhooks

Enables Telegraf to act as a Papertrail Webhook.

Events

Full documentation.

Events from Papertrail come in two forms:

  • The event-based callback:

    • A point is created per event, with the timestamp as received_at
    • Each point has a field counter (count), which is set to 1 (signifying the event occurred)
    • Each event "hostname" object is converted to a host tag
    • The "saved_search" name in the payload is added as an event tag
    • The "saved_search" id in the payload is added as a search_id field
    • The papertrail url to view the event is built and added as a url field
    • The rest of the data in the event is converted directly to fields on the point:
      • id
      • source_ip
      • source_name
      • source_id
      • program
      • severity
      • facility
      • message

When a callback is received, an event-based point will look similar to:

papertrail,host=myserver.example.com,event=saved_search_name count=1i,source_name="abc",program="CROND",severity="Info",source_id=2i,message="message body",source_ip="208.75.57.121",id=7711561783320576i,facility="Cron",url="https://papertrailapp.com/searches/42?centered_on_id=7711561783320576",search_id=42i 1453248892000000000
  • The count-based callback

    • A point is created per timeseries object per count, with the timestamp as the "timeseries" key (the unix epoch of the event)
    • Each point has a field counter (count), which is set to the value of each "timeseries" object
    • Each count "source_name" object is converted to a host tag
    • The "saved_search" name in the payload is added as an event tag

When a callback is received, a count-based point will look similar to:

papertrail,host=myserver.example.com,event=saved_search_name count=3i 1453248892000000000