项目作者: cybozu-go

项目描述 :
Alert routing and filtering service
高级语言: Go
项目地址: git://github.com/cybozu-go/kkok.git
创建时间: 2016-10-27T13:10:31Z
项目社区:https://github.com/cybozu-go/kkok

开源协议:MIT License

下载


GitHub release
GoDoc
CircleCI
Go Report Card

kkok (taken from Japanese word 警告 - keikoku -, in English alert) is a service to process alerts nicely. It gathers alerts from miscellaneous sources, applies filters to edit or route them, then sends the processed alerts via email, SMS (Twilio), Slack, etc.

Architecture

kkok sends alerts through these steps:

  1. Generate alerts from sources.
  2. Collect and pool alerts for some duration.
  3. Edit/route collected alerts by filters.
  4. Send alerts along with the given routes.

Please read Architecture.md for more details.

Features

  • Generators:

    • HTTP REST API.
    • maildir: generate alerts from mails in a Maildir directory.
  • Filters:

    • freq: calculate and add frequency information to alerts.
    • discard: discard alerts based on the given conditions.
    • group: merge alerts into groups by field values.
    • route: add or replace routes to alert receivers.
    • edit: edit alerts by JavaScript.
    • exec: invoke an external command to edit alerts.
  • Transports:

    • email: format and send alerts via email.
    • slack: format and send alerts to a Slack channel.
    • twilio: format and send SMS via Twilio.
    • exec: invoke an external command to send alerts.

Build

Use Go 1.7 or better.

Run the command below exactly as shown, including the ellipsis.
They are significant - see go help packages.

  1. go get -u github.com/cybozu-go/kkok/...

Usage

Read Usage.md and API.md.

License

MIT

Authors & Contributors