ledisdb/server/accesslog.go

42 lines
704 B
Go

package server
import (
"github.com/siddontang/go/log"
)
const (
accessTimeFormat = "2006/01/02 15:04:05"
)
type accessLog struct {
l *log.Logger
}
func newAcessLog(baseName string) (*accessLog, error) {
l := new(accessLog)
h, err := log.NewTimeRotatingFileHandler(baseName, log.WhenDay, 1)
if err != nil {
return nil, err
}
l.l = log.New(h, log.Ltime)
return l, nil
}
func (l *accessLog) Close() {
l.l.Close()
}
func (l *accessLog) Log(remoteAddr string, usedTime int64, request []byte, err error) {
format := `%s %q %d [%s]`
if err == nil {
l.l.Infof(format, remoteAddr, request, usedTime, "OK")
} else {
l.l.Infof(format, remoteAddr, request, usedTime, err.Error())
}
}