package logger

import (
	"log/slog"
	"os"
)

// 全局默认 logger，使用 JSON handler 输出到 stdout。
var defaultLogger *slog.Logger

func init() {
	defaultLogger = slog.New(slog.NewJSONHandler(os.Stdout, &slog.HandlerOptions{
		Level: slog.LevelInfo,
	}))
	slog.SetDefault(defaultLogger)
}

// Default 返回全局 logger 实例
func Default() *slog.Logger {
	return defaultLogger
}

// WithService 返回带有 service 字段的 logger
func WithService(name string) *slog.Logger {
	return defaultLogger.With("service", name)
}
