Categorygithub.com/nixwiz/sensu-go-flowdock-handler
modulepackage
0.3.1
Repository: https://github.com/nixwiz/sensu-go-flowdock-handler.git
Documentation: pkg.go.dev

# README

sensu-go-flowdock-handler

The Senso Go Flowdock Handler is a Sensu Event Handler for sending incident notifications to CA Flowdock.

This handler reuses concepts found in the sensu-email-handler.

Installation

Create an executable script from this source or download one of the existing releases.

From the local path of the sensu-go-flowdock-handler repository:

go build -o /usr/local/bin/sensu-flowdock-handler main.go

Sensu Configuration

Example Sensu Go definition:

{
    "api_version": "core/v2",
    "type": "Handler",
    "metadata": {
        "namespace": "default",
        "name": "flowdock"
    },
    "spec": {
        "type": "pipe",
        "command": "sensu-flowdock-handler -t 0123456789abcdef0123456789abcdef -b http://sensu-backend.example.com:3000",
        "timeout": 10,
        "filters": [
            "is_incident",
            "not_silenced"
        ]
    }
}

Flowdock Configuration

This handler makes use of Flowdock's "new" Integration API mechanism. This means creating a developer application and then a source. This source will have the API Token needed by this handler.

Note: Actions for these messages are not implemented.

Usage Examples

Help

The Sensu Flowdock handler for sending notifications

Usage:
  sensu-flowdock-handler [flags]

Flags:
  -a, --authorAvatar string    Avatar URL (default "https://avatars1.githubusercontent.com/u/1648901?s=200&v=4")
  -n, --authorName string      Name for the author of the thread (default "Sensu")
  -b, --backendURL string      The URL for the backend, used to create links to events, if not in env SENSU_FLOWDOCK_BACKENDURL
  -t, --flowdockToken string   The Flowdock application token, if not in env SENSU_FLOWDOCK_TOKEN
  -h, --help                   help for sensu-flowdock-handler
  -l, --labelPrefix string     Label prefix for entity fields to be included in thread (default "flowdock_")

Environment Variables and Annotations

Environment VariableSettingAnnotation
SENSU_FLOWDOCK_TOKENsame as -t / --flowdockTokensensu.io/plugins/flowdock/token
SENSU_FLOWDOCK_BACKENDURLsame as -b / --backendURLsensu.io/plugins/flowdock/backend-url
N/Asame as -n / --authorNamesensu.io/plugins/flowdock/author-name
N/Asame as -a / --authorAvatarsensu.io/plugins/flowdock/author-avatar

Precedence

environment variable < command-line argument < annotation

Usage of entity labels to add fields to output

This handler can make use of labels provided by the entity to populate addtional fields in the thread.

---
##
# agent configuration
##
#name: ""
namespace: "default"
subscriptions:
  - linux
backend-url:
  - "ws://127.0.0.1:8081"

labels:
  flowdock_Application: "webapp1"
  flowdock_Environment: "live"

Sample in Flowdock

Below is a thread sample that includes surfacing the labels defined above.

Flowdock Sample

# Structs

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author