You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
kratos/pkg/log/doc.go

70 lines
1.9 KiB

6 years ago
/*Package log 是kratos日志库.
主要功能
1. 日志打印到elk
2. 日志打印到本地内部使用log4go
3. 日志打印到标准输出
4. verbose日志实现参考glog实现可通过设置不同verbose级别默认不开启
6 years ago
日志配置
1. 默认agent配置
6 years ago
目前日志已经实现默认配置可以根据env自动切换远程日志可以直接使用以下方式
6 years ago
log.Init(nil)
2. 启动参数 or 环境变量
启动参数 环境变量 说明
log.stdout LOG_STDOUT 是否开启标准输出
log.agent LOG_AGENT 远端日志地址unixpacket:///var/run/lancer/collector_tcp.sock?timeout=100ms&chan=1024
6 years ago
log.dir LOG_DIR 文件日志路径
log.v LOG_V verbose日志级别
log.module LOG_MODULE 可单独配置每个文件的verbose级别file=1,file2=2
log.filter LOG_FILTER 配置需要过滤的字段field1,field2
3. 配置文件
但是如果有特殊需要可以走一下格式配置
[log]
family = "xxx-service"
dir = "/data/log/xxx-service/"
stdout = true
vLevel = 3
filter = ["fileld1", "field2"]
[log.module]
"dao_user" = 2
"servic*" = 1
[log.agent]
taskID = "00000x"
proto = "unixpacket"
addr = "/var/run/lancer/collector_tcp.sock"
chanSize = 10240
6 years ago
配置说明
1.log
family 项目名默认读环境变量$APPID
studout 标准输出prod环境不建议开启
filter 配置需要过滤掉的字段***替换
dir 文件日志地址prod环境不建议开启
v 开启verbose级别日志可指定全局级别
2. log.module
可单独配置每个文件的verbose级别
3. log.agent
远端日志配置项
taskID lancer分配的taskID
proto 网络协议常见tcp, udp, unixgram
addr 网络地址常见ip:prot, sock
chanSize 日志队列长度
最佳实践
1. KVString 使用 KVString 代替 KV 可以减少对象分配, 避免给 golang GC 造成压力.
6 years ago
*/
package log