Splunk Logging Driver: PR feedback
Signed-off-by: Denis Gladkikh <denis@gladkikh.email>
This commit is contained in:
parent
603fd08315
commit
9407322972
1 changed files with 14 additions and 13 deletions
|
@ -13,6 +13,7 @@ import (
|
|||
"net/http"
|
||||
"net/url"
|
||||
"strconv"
|
||||
"time"
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/docker/docker/daemon/logger"
|
||||
|
@ -47,17 +48,17 @@ type splunkLogger struct {
|
|||
}
|
||||
|
||||
type splunkLoggerInline struct {
|
||||
splunkLogger
|
||||
*splunkLogger
|
||||
|
||||
nullEvent *splunkMessageEvent
|
||||
}
|
||||
|
||||
type splunkLoggerJSON struct {
|
||||
splunkLoggerInline
|
||||
*splunkLoggerInline
|
||||
}
|
||||
|
||||
type splunkLoggerRaw struct {
|
||||
splunkLogger
|
||||
*splunkLogger
|
||||
|
||||
prefix []byte
|
||||
}
|
||||
|
@ -209,14 +210,14 @@ func New(ctx logger.Context) (logger.Logger, error) {
|
|||
Attrs: attrs,
|
||||
}
|
||||
|
||||
return &splunkLoggerInline{*logger, nullEvent}, nil
|
||||
return &splunkLoggerInline{logger, nullEvent}, nil
|
||||
case splunkFormatJSON:
|
||||
nullEvent := &splunkMessageEvent{
|
||||
Tag: tag,
|
||||
Attrs: attrs,
|
||||
}
|
||||
|
||||
return &splunkLoggerJSON{splunkLoggerInline{*logger, nullEvent}}, nil
|
||||
return &splunkLoggerJSON{&splunkLoggerInline{logger, nullEvent}}, nil
|
||||
case splunkFormatRaw:
|
||||
var prefix bytes.Buffer
|
||||
prefix.WriteString(tag)
|
||||
|
@ -228,7 +229,7 @@ func New(ctx logger.Context) (logger.Logger, error) {
|
|||
prefix.WriteString(" ")
|
||||
}
|
||||
|
||||
return &splunkLoggerRaw{*logger, prefix.Bytes()}, nil
|
||||
return &splunkLoggerRaw{logger, prefix.Bytes()}, nil
|
||||
default:
|
||||
return nil, fmt.Errorf("Unexpected format %s", splunkFormat)
|
||||
}
|
||||
|
@ -243,7 +244,7 @@ func (l *splunkLoggerInline) Log(msg *logger.Message) error {
|
|||
|
||||
message.Event = &event
|
||||
|
||||
return l.postMessage(&message)
|
||||
return l.postMessage(message)
|
||||
}
|
||||
|
||||
func (l *splunkLoggerJSON) Log(msg *logger.Message) error {
|
||||
|
@ -261,7 +262,7 @@ func (l *splunkLoggerJSON) Log(msg *logger.Message) error {
|
|||
|
||||
message.Event = &event
|
||||
|
||||
return l.postMessage(&message)
|
||||
return l.postMessage(message)
|
||||
}
|
||||
|
||||
func (l *splunkLoggerRaw) Log(msg *logger.Message) error {
|
||||
|
@ -269,11 +270,11 @@ func (l *splunkLoggerRaw) Log(msg *logger.Message) error {
|
|||
|
||||
message.Event = string(append(l.prefix, msg.Line...))
|
||||
|
||||
return l.postMessage(&message)
|
||||
return l.postMessage(message)
|
||||
}
|
||||
|
||||
func (l *splunkLogger) postMessage(message *splunkMessage) error {
|
||||
jsonEvent, err := json.Marshal(&message)
|
||||
jsonEvent, err := json.Marshal(message)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
@ -308,10 +309,10 @@ func (l *splunkLogger) Name() string {
|
|||
return driverName
|
||||
}
|
||||
|
||||
func (l *splunkLogger) createSplunkMessage(msg *logger.Message) splunkMessage {
|
||||
func (l *splunkLogger) createSplunkMessage(msg *logger.Message) *splunkMessage {
|
||||
message := *l.nullMessage
|
||||
message.Time = fmt.Sprintf("%f", float64(msg.Timestamp.UnixNano())/1000000000)
|
||||
return message
|
||||
message.Time = fmt.Sprintf("%f", float64(msg.Timestamp.UnixNano())/float64(time.Second))
|
||||
return &message
|
||||
}
|
||||
|
||||
// ValidateLogOpt looks for all supported by splunk driver options
|
||||
|
|
Loading…
Add table
Reference in a new issue