Framework for golang applications which helps to send metrics, logs, traces and events into different monitoring tools or vendors.
- 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)
- Jaeger works with its Jaeger agent
- DataDog uses DataDog agent for logs, metrics and traces
- NewRelic uses NewRelic standalone infrastructure agent for logs
- NewRelic uses NewRelic Telemetry SDK for logs, metrics, traces, events
- Opentelemetry communicates with its Opentelemetry agent
- Grafana uses Grafana Annotations API
Set proper GOROOT and PATH variables
export GOROOT="$HOME/go/root/1.17.4"
export PATH="$PATH:$GOROOT/bin"
Set go.mod manually
module sre
go 1.17
require github.com/devopsext/sre vX.Y.Z
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
- devopsext/events Kubernetes & Alertmanager events to Telegram, Slack, Workchat and other messengers.