package log import ( "fmt" "log/slog" "os" ) type Logger struct { file *os.File logger *slog.Logger } func NewLogger(path string) (*Logger, error) { file, err := os.OpenFile(path, os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666) if err != nil { return nil, fmt.Errorf("не удалось открыть файл лога: %s", err) } logger := slog.New(slog.NewTextHandler(file, nil)) return &Logger{ file: file, logger: logger, }, nil } func (it *Logger) Close() error { return it.file.Close() }