fix filelogger bug

master v0.0.14
infra-bot 5 years ago
parent 034f0826d6
commit 2c8309a602
  1. 23
      filelog.go

@ -79,6 +79,12 @@ func NewFileLogger(path, name string, flushInterval time.Duration, fileSplitSize
flushInterval: flushInterval,
fileSplitSize: fileSplitSize,
bufferSize: bufferSize,
writer: &bufferWriter{
logPath: path,
logName: name,
maxFileSize: fileSplitSize,
bufferSize: bufferSize,
},
}
go writer.flushDaemon()
return writer
@ -106,25 +112,12 @@ func (w *mFileLogger) Write(msg []byte) (n int, err error) {
w.mu.Lock()
defer w.mu.Unlock()
writer := w.writer
if writer == nil {
w.writer = &bufferWriter{
logPath: w.filepath,
logName: w.name,
maxFileSize: w.fileSplitSize,
bufferSize: w.bufferSize,
}
writer = w.writer
}
if err = writer.checkRotate(time.Now()); err != nil {
if err = w.writer.checkRotate(time.Now()); err != nil {
fmt.Println("[logkit] check rotate err: " + err.Error())
return
}
w.putBuffer(buf)
return writer.Write(buf.Bytes())
return w.writer.Write(buf.Bytes())
}
func (bufferW *bufferWriter) Write(p []byte) (int, error) {

Loading…
Cancel
Save