closer to ready

This commit is contained in:
Jeffrey Paul 2024-06-10 02:39:01 -07:00
parent 60cb410c32
commit d8f35dd031
3 changed files with 16 additions and 6 deletions

View File

@ -1,5 +1,7 @@
# simplelog
## Summary
simplelog is an opinionated logging package designed to facilitate easy and
structured logging in Go applications with an absolute minimum of
boilerplate.
@ -7,12 +9,16 @@ boilerplate.
The idea is that you can add a single import line which replaces the
stdlib `log/slog` default handler, and solve the 90% case for logging.
## Current Status
Pre-1.0, not working yet.
## Features
* if output is a tty, outputs pretty color logs
* if output is not a tty, outputs json
* supports delivering logs via tcp RELP (e.g. to remote rsyslog using imrelp)
* supports delivering each log message via a webhook
- if output is a tty, outputs pretty color logs
- if output is not a tty, outputs json
- supports delivering logs via tcp RELP (e.g. to remote rsyslog using imrelp)
- supports delivering each log message via a webhook
## Installation

View File

@ -2,10 +2,13 @@ package simplelog
import (
"context"
"encoding/json"
"log"
"runtime"
"log/slog"
"os"
"time"
"github.com/google/uuid"
"github.com/mattn/go-isatty"
)
@ -81,6 +84,7 @@ func (cl *MultiplexHandler) WithGroup(name string) slog.Handler {
}
return &MultiplexHandler{handlers: newHandlers}
}
type ExtendedEvent interface {
GetID() uuid.UUID
GetTimestamp() time.Time

View File

@ -3,7 +3,7 @@ package main
import (
"log/slog"
_ "git.eeqj.de/sneak/go-simplelog" // Using underscore to only invoke init()
_ "sneak.berlin/go/simplelog" // Using underscore to only invoke init()
)
func main() {