slogbetterstack

package module
v1.4.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 6, 2026 License: MIT Imports: 7 Imported by: 0

README

Better Stack Go client

Better Stack dashboard

MIT License Latest version build

Experience SQL-compatible structured log management based on ClickHouse. Learn more ⇗

Documentation

Getting started ⇗

Need help?

Please let us know at hello@betterstack.com. We're happy to help!

Credits

slog-betterstack was created and maintained by Samuel Berthe and released under the MIT license. Thank you, Samuel! ❤️


MIT license, example project

Documentation

Index

Constants

View Source
const BetterstackEndpoint = "https://in.logs.betterstack.com/"

Variables

View Source
var ContextKey = "extra"
View Source
var ErrorKeys = []string{"error", "err"}
View Source
var SourceKey = "runtime"

Functions

func DefaultConverter

func DefaultConverter(addSource bool, replaceAttr func(groups []string, a slog.Attr) slog.Attr, loggerAttr []slog.Attr, groups []string, record *slog.Record) map[string]any

Types

type BetterstackHandler

type BetterstackHandler struct {
	// contains filtered or unexported fields
}

func (*BetterstackHandler) Enabled

func (h *BetterstackHandler) Enabled(_ context.Context, level slog.Level) bool

func (*BetterstackHandler) Handle

func (h *BetterstackHandler) Handle(ctx context.Context, record slog.Record) error

func (*BetterstackHandler) WithAttrs

func (h *BetterstackHandler) WithAttrs(attrs []slog.Attr) slog.Handler

func (*BetterstackHandler) WithGroup

func (h *BetterstackHandler) WithGroup(name string) slog.Handler

type Converter

type Converter func(addSource bool, replaceAttr func(groups []string, a slog.Attr) slog.Attr, loggerAttr []slog.Attr, groups []string, record *slog.Record) map[string]any

type Option

type Option struct {
	// log level (default: debug)
	Level slog.Leveler

	// token
	Token string
	// optional: endpoint
	Endpoint string
	// default: 10s
	Timeout time.Duration

	// optional: customize record builder
	Converter Converter
	// optional: custom marshaler
	Marshaler func(v any) ([]byte, error)
	// optional: fetch attributes from context
	AttrFromContext []func(ctx context.Context) []slog.Attr

	// optional: see slog.HandlerOptions
	AddSource   bool
	ReplaceAttr func(groups []string, a slog.Attr) slog.Attr
}

func (Option) NewBetterstackHandler

func (o Option) NewBetterstackHandler() slog.Handler

Directories

Path Synopsis
A small program that sends a few log records to Better Stack.
A small program that sends a few log records to Better Stack.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL