Documentation
¶
Index ¶
- Constants
- Variables
- func AddLogToInDBWorkerQueue(clName string, data any) bool
- func Close()
- func CloseLogDataQueue()
- func G() *zap.SugaredLogger
- func GinLogger() gin.HandlerFunc
- func GinRecovery(stack bool) gin.HandlerFunc
- func Init(conf *LogConfigs, splitErrorLogs bool) error
- func InitLogInDBWorker(mgCLi *mongo.Client, dbName string)
- func L() *zap.Logger
- func LoadDefaultConfig() error
- func LogDebugf(template string, args ...any)
- func LogDebugln(text ...any)
- func LogErrorf(t string, text ...any)
- func LogErrorln(text ...any)
- func LogInfof(template string, args ...any)
- func LogInfoln(text ...any)
- func LogPanic(text any)
- func LogWarnf(t string, text ...any)
- func LogWarnln(text ...any)
- type CustomizedLogger_T
- type LogChannel_T
- type LogConfigs
Constants ¶
View Source
const DefaultLogPath = "./logs/" // 默认输出日志文件路径
Variables ¶
View Source
var ( MongoWorkerNum int = 1 MongoLogBatchSize int = 500 MongoWorkerDefultPatrolTime time.Duration = time.Duration(5) * time.Second )
View Source
var ApiLogger *zap.SugaredLogger //稍低性能 糖化 Logger
View Source
var ApiLoggerL *zap.Logger // 高性能 基础的logger
View Source
var BufferedWriteSyncer *zapcore.BufferedWriteSyncer
Deprecated: 仅保留用于下游兼容(指向最后创建的文件缓冲 syncer),新代码勿直接使用。 实际 flush 由包内 bufferedSyncers 统一管理。
View Source
var LogDataQueue chan *LogChannel_T
View Source
var MongoLogClient *mongo.Client
View Source
var MongoLogDbName string
Functions ¶
func AddLogToInDBWorkerQueue ¶ added in v0.0.13
func CloseLogDataQueue ¶ added in v0.0.13
func CloseLogDataQueue()
CloseLogDataQueue 通知工人离线并等待其 flush 剩余日志。 注意:这里不 close LogDataQueue,避免关闭后并发发送导致 panic; worker 通过 workerCtx.Done 感知关闭,channel 由 GC 回收。
func GinRecovery ¶
func GinRecovery(stack bool) gin.HandlerFunc
GinRecovery recover掉项目可能出现的panic,并使用zap记录相关日志
func Init ¶
func Init(conf *LogConfigs, splitErrorLogs bool) error
Init 初始化 log splitErrorLogs 如果为true则,error及以上打印一个文件,全部日志打印一个文件
func InitLogInDBWorker ¶ added in v0.0.13
func LoadDefaultConfig ¶
func LoadDefaultConfig() error
func LogDebugln ¶
func LogDebugln(text ...any)
func LogErrorln ¶
func LogErrorln(text ...any)
Types ¶
type CustomizedLogger_T ¶ added in v0.2.0
type CustomizedLogger_T struct {
*zap.SugaredLogger
}
var CustomizedLogger *CustomizedLogger_T // 可以自定义函数名的SugaredLogger
func (*CustomizedLogger_T) Warningf ¶ added in v0.2.0
func (c *CustomizedLogger_T) Warningf(template string, args ...interface{})
type LogChannel_T ¶ added in v0.0.13
type LogConfigs ¶
type LogConfigs struct {
LogLevel string // 日志打印级别 debug info warning error
LogFormat string // 输出日志格式 logfmt, json
LogPath string // 输出日志文件路径
LogFileName string // 输出日志文件名称
LogFileMaxSize int // 【日志分割】单个日志文件最多存储量 单位(mb)
LogFileMaxBackups int // 【日志分割】日志备份文件最多数量
LogMaxAge int // 日志保留时间,单位: 天 (day)
LogCompress bool // 是否压缩日志
LogStdout bool // 是否输出到控制台
LogStdoutSync bool // 是否异步输出到控制台
LogFile bool // 是否输出到文件
StartNewLogFile bool // 项目启动时启用新的日志文件
SyncerSize int // 日志延迟写入大小
SyncerDelay time.Duration // 日志延迟写入时间
//
LogInDBWorkerNum int // 日志写入数据库的工人数量
LogInDBWorkerPanicRetryNum int // 日志写入数据库的工人离线后,重试次数
LogInDBWorkerMongoBatchSize int // 日志写入数据库 mongodb 批量写入数量
LogInDBWorkerPatrolTime time.Duration // 日志写入数据库 工人巡检时间间隔
}
Click to show internal directories.
Click to hide internal directories.