- 基於"github.com/heatxsink/go-logstash"
- 示例代碼如下
package main import ( "github.com/heatxsink/go-logstash" ) //將go 的錯誤日志推送的elk var logs *logstash.Logstash //使用單例模式創建redis client func GetInstance(opt redis.Options) *redis.Client { once.Do(func() { redisdb = redis.NewClient(&opt) }) return redisdb } func initLogstash() { logs := logstash.New("192.168.3.10", 5000, 5) conn, err := logs.Connect() if err != nil { fmt.Println(err) } err = logs.Writeln("{ 'foo' : 'bar' }") if err != nil { fmt.Println(err) } defer conn.Close() } func main() { initLogstash() select{} }
- 在Kinbana 配置logstash 展示
添加索引模式,把logstash 索引按照配置添加
打開Discover 界面即可看到logstash 記錄的日志。
這里看到的數據都是交雜在一起的。如果要更方便查詢則需要使用到logstash filter