{"repo":"donnie4w/go-logger","free":true,"listed":false,"github":"https://github.com/donnie4w/go-logger","clone":"git clone https://github.com/donnie4w/go-logger.git","description":"High-performance Go logging library, with concurrency performance 10 times or more faster than the official library. Go高性能日志库，适用于高并发场景，并发性能是官方库10倍或以上","language":"Go","stars":364,"topics":["go-logger","log","logger","logging","logging-library","high-performance","golang-logger","log-tracing","logger-go","tracing"],"license":"BSD-3-Clause","category":"analytics","readme_excerpt":"go-logger 高性能golang日志库 [[English]](https://github.com/donnie4w/go-logger/blob/master/README en.md) ------------ 性能特点 1. 极高并发性能 ：极高的并发写数据性能，比官方库或同类型日志库高 10倍或以上 2. 极低内存占用 ：是官方库与同类型日志库的几分之一 功能特点 1. 日志级别设置 ：支持动态调整日志级别，以便在不同环境下控制日志的详细程度。 2. 格式化输出 ：支持自定义日志的输出格式，包括时间戳、日志级别、日志位置 等元素。 3. 文件数回滚 ：支持按照日志文件数自动文件回滚，并防止日志文件数过多。 4. 文件压缩 ：支持压缩归档日志文件。 5. 支持标准库log/slog日志文件管理 ：支持标准库文件切割，压缩等功能。 6. 外部处理函数 ：支持自定义外部处理函数。 7. 日志堆栈信息 ：支持日志记录点可以回溯到程序入口点的所有函数调用序列，包括每一步函数调用的文件名，函数名，行号 8. 日志级别独立日志格式输出 ：支持不同日志级别 指定不同的日志输出格式。 go-logger + slog - 日志文件管理 : 支持 直接作为go 标准库 log/slog 的日志文件管理器，实现 slog 的日志文件按小时，天，月份，文件大小等多种方式进行日志文件切割，同时也支持按文件大小切分日志文件后,压缩归档日志文件。 - 一致的性能表现 : go-logger + slog 内存分配与性能 与 slog直接写日志文件一致。 - 详细参见使用文档 使用文档 ------------ 一. 设置日志打印格式 ( SetFormat ) 如： SetFormat(FORMAT LEVELFLAG FORMAT SHORTFILENAME FORMAT DATE FORMAT TIME) 默认格式: FORMAT LEVELFLAG FORMAT SHORTFILENAME FORMAT DATE FORMAT TIME 示例： 二. 设置日志标识输出格式 ( SetFormatter ) SetFormatter(\"{level} {time} {file} {message}\\n\") 默认格式： \"{level} {time} {file} {message}\\n\" 说明：除了关键标识 {message} {time} {file} {level} 外，其他内容原样输出，如 ， 空格，换行 等 通过修改 formatter ，可以自由定义输出格式，例如： ------------ 三. 日志级别 ( SetLevel ) ( SetLevelOption ) DEBUG < INFO < WARN < ERROR < FATAL 关闭所有日志 SetLevel(OFF) go-logger 支持多种日志级别，从 DEBUG 到 FATAL ，并可以通过 SetLevel 方法设置日志的输出级别： 此外，可以通过 SetLevelOption 为不同的日志级别设置独立的日志输出格式： 示例:分别给不同的日志级别设置不一样的输出格式 执行结果 四. 文件日志管理 go-logger支持日志信息写入文件，并提供文件分割的多种策略与压缩备份等特性 使用全局log对象时，直接调用设置方法： 多实例： 1. 按日期分割日志文件 2. 按文件大小分割日志文件 ------ 五. Option参数 （ SetOption ） 通过 Option 参数","default_branch":null,"files":null,"tree":[],"storefront":"/r/donnie4w","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/donnie4w/go-logger/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}