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.
otto
a18477baaa
|
1 year ago | |
---|---|---|
klog | 1 year ago | |
request | 2 years ago | |
t | 2 years ago | |
tracing | 2 years ago | |
.gitignore | 2 years ago | |
Makefile | 2 years ago | |
README.md | 2 years ago | |
file.go | 2 years ago | |
file_test.go | 2 years ago | |
go.mod | 2 years ago | |
go.sum | 1 year ago | |
log.go | 1 year ago | |
log_test.go | 2 years ago | |
logger.go | 1 year ago |
README.md
日志客戶端结合kafka-es
系统架构图
Log Agent,日志收集客户端,用来收集服务器上的日志 Kafka,高吞吐量的分布式队列,日志写入口 Elasticsearch,日志存储库
日志服务端
使用
config.yaml
log:
level: "debug" # 日志 debug:调试, panic:详情调试,info:同步远端
name: "room" # 日志链名称
kafka: # kafka 配置具体参考
addr:
- "127.0.0.1:9092"
import (
"git.gz.internal.jumaiyx.cn/pkg/log"
)
// 初始化一个日志客户端
logger := log.NewLogger(c.Get().Log)
// 中间件使用, 更有效追踪日志【暂时代替链路】
var opts = []grpc.ServerOption{
grpc.Middleware(
logger.Server(),
),
}
srv := grpc.NewServer(opts...)
// 服务中可以通过wire方式注入使用
func wireApp(*conf.Server, *conf.Data, log.Logger) (*kratos.App, func(), error) {
panic(wire.Build(server.ProviderServerSet, data.ProviderSet, biz.ProviderSet, service.ProviderServiceSet, newApp))
}
// 打印日志并写入日志服务
logger.Debug(" message")
// # msg=debug message
logger.Info("111", "222", "333", "444", "555")
// # msg=debug 111 222 333 444 555
//logger.Warn("Warn", "222", "333", "444", "555")
//logger.Error("Error", "222", "333", "444", "555")
//logger.Fatal("Fatal", "222", "333", "444", "555")
自动化注入
// todo 开发中