SRE framework
Framework for golang applications which helps to send metrics, logs, traces and events into different monitoring tools or vendors.
Features
- Provide plain text, json logs with trace ID (if log entry is based on a span) and source line info
- Provide additional labels and tags for metrics, like: source line, service name and it's version
- Support logging tools (aka logs):
- Support monitoring tools (aka metrics)
- Support tracing tools (aka traces)
- Support eventing tools (aka events)
Usage
Requirements
Set envs
Set proper GOROOT and PATH variables
export GOROOT="$HOME/go/root/1.17.4"
export PATH="$PATH:$GOROOT/bin"
Get Go modules
Set go.mod manually
module sre
go 1.17
require github.com/devopsext/sre vX.Y.Z
Collect go modules
go get
go: finding module for package github.com/devopsext/sre/provider
go: finding module for package github.com/devopsext/sre/common
go: found github.com/devopsext/sre/common in github.com/devopsext/sre vX.Y.Z
go: found github.com/devopsext/sre/provider in github.com/devopsext/sre vX.Y.Z
*vX.Y.Z - tag (version) of the framework, for instance => v0.0.7
Run one of example
Framework in other projects
- devopsext/events Kubernetes & Alertmanager events to Telegram, Slack, Workchat and other messengers.