docs: add godoc and bilingual README

This commit is contained in:
2026-03-17 15:33:11 +03:00
parent 6112a707c7
commit badee2c598
10 changed files with 541 additions and 54 deletions

42
doc.go Normal file
View File

@@ -0,0 +1,42 @@
// Package slog provides a small structured logger that can write the same
// record to text and JSON outputs.
//
// A Logger can fan out records to stdout, files, or any external io.Writer.
// Text writers can include timestamps and a compact traceback frame. JSON
// writers always emit a structured traceback slice.
//
// CreateLogger uses the following defaults:
// - prefix: "LOG"
// - level: FATAL, which enables info, warn, error, and fatal records
// - text timestamps: enabled
// - text traceback: disabled
// - pretty JSON: disabled
//
// Call Level(DEBUG) to enable all records, including debug messages.
//
// Basic usage:
//
// logger := slog.CreateLogger().
// Prefix("API").
// Level(slog.DEBUG).
// PrintTraceback(true).
// JsonPretty(true)
//
// text := logger.CreateTextStdoutWriter()
// jsonFile, err := logger.CreateJsonFileWriter("logs/app.json")
// if err != nil {
// panic(err)
// }
//
// logger.AddWriters(text, jsonFile)
// logger.Infoln("service started")
//
// if err := logger.Close(); err != nil {
// panic(err)
// }
//
// Writers created with CreateTextFileWriter or CreateJsonFileWriter are owned by
// the logger and are closed by Logger.Close. Writers created from existing
// io.Writer values through CreateTextWriter or CreateJsonWriter remain owned by
// the caller and are not closed by the logger.
package slog