mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
a1ebda09ba
Signed-off-by: dungeonmaster18 <umesh4257@gmail.com>
1.5 KiB
1.5 KiB
fluent-logger-golang
A structured event logger for Fluentd (Golang)
How to install
go get github.com/fluent/fluent-logger-golang/fluent
Usage
Install the package with go get
and use import
to include it in your project.
import "github.com/fluent/fluent-logger-golang/fluent"
GoDoc: http://godoc.org/github.com/fluent/fluent-logger-golang/fluent
Example
package main
import (
"github.com/fluent/fluent-logger-golang/fluent"
"fmt"
"time"
)
func main() {
logger, err := fluent.New(fluent.Config{})
if err != nil {
fmt.Println(err)
}
defer logger.Close()
tag := "myapp.access"
var data = map[string]string{
"foo": "bar",
"hoge": "hoge",
}
error := logger.Post(tag, data)
// error := logger.PostWithTime(tag, time.Now(), data)
if error != nil {
panic(error)
}
}
data
must be a value like map[string]literal
, map[string]interface{}
, struct
or msgp.Marshaler
. Logger refers tags msg
or codec
of each fields of structs.
Setting config values
f := fluent.New(fluent.Config{FluentPort: 80, FluentHost: "example.com"})
WriteTimeout
Sets the timeout for Write call of logger.Post. Since the default is zero value, Write will not time out.
Tests
go test