|
|
@@ -34,18 +34,18 @@ func (this *StdOutLogWriter) Log(log LogEntry) {
|
|
|
}
|
|
|
|
|
|
type FileLogWriter struct {
|
|
|
- queue chan LogEntry
|
|
|
+ queue chan string
|
|
|
logger *log.Logger
|
|
|
file *os.File
|
|
|
}
|
|
|
|
|
|
func (this *FileLogWriter) Log(log LogEntry) {
|
|
|
select {
|
|
|
- case this.queue <- log:
|
|
|
+ case this.queue <- log.String():
|
|
|
default:
|
|
|
- log.Release()
|
|
|
// We don't expect this to happen, but don't want to block main thread as well.
|
|
|
}
|
|
|
+ log.Release()
|
|
|
}
|
|
|
|
|
|
func (this *FileLogWriter) run() {
|
|
|
@@ -54,9 +54,7 @@ func (this *FileLogWriter) run() {
|
|
|
if !open {
|
|
|
break
|
|
|
}
|
|
|
- this.logger.Print(entry.String() + platform.LineSeparator())
|
|
|
- entry.Release()
|
|
|
- entry = nil
|
|
|
+ this.logger.Print(entry + platform.LineSeparator())
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -70,7 +68,7 @@ func NewFileLogWriter(path string) (*FileLogWriter, error) {
|
|
|
return nil, err
|
|
|
}
|
|
|
logger := &FileLogWriter{
|
|
|
- queue: make(chan LogEntry, 16),
|
|
|
+ queue: make(chan string, 16),
|
|
|
logger: log.New(file, "", log.Ldate|log.Ltime),
|
|
|
file: file,
|
|
|
}
|