Documentation
¶
Overview ¶
Example ¶
package main import ( "fmt" "log/slog" "os" "time" slogpushover "github.com/SkYNewZ/slog-pushover" ) func main() { handler := slogpushover.NewHandler(&slogpushover.Options{ Level: slog.LevelDebug, Token: os.Getenv("PUSHOVER_TOKEN"), Recipient: os.Getenv("PUSHOVER_RECIPIENT"), Message: nil, Converter: nil, AddSource: true, ReplaceAttr: nil, }) logger := slog.New(handler) logger = logger.With("release", "v1.0.0") logger. With( slog.Group("user", slog.String("id", "user-123"), slog.Time("created_at", time.Now().AddDate(0, 0, -1)), ), ). With("environment", "dev"). With("error", fmt.Errorf("an error")). Error("A message") }
Output:
Index ¶
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DefaultConverter ¶
func DefaultConverter(addSource bool, replaceAttr func(groups []string, a slog.Attr) slog.Attr, loggerAttr []slog.Attr, groups []string, record *slog.Record) string
DefaultConverter is the default Converter used by Handler.
func NewHandler ¶
NewHandler creates a new slog.Handler that sends messages to Pushover.
Types ¶
type Converter ¶
type Converter func(addSource bool, replaceAttr func(groups []string, a slog.Attr) slog.Attr, loggerAttr []slog.Attr, groups []string, record *slog.Record) string
Converter is a function that converts a slog.Record to a string.
type Options ¶
type Options struct { Level slog.Leveler // minimum level of messages to log (default: slog.LevelDebug) Token string // Pushover application token Recipient string // Pushover user/group key Message *pushover.Message // optional: customize Pushover message. 'Message' will be replaced by the log message Converter Converter // optional: customize Pushover message builder // optional: see slog.HandlerOptions AddSource bool ReplaceAttr func(groups []string, a slog.Attr) slog.Attr }
Click to show internal directories.
Click to hide internal directories.