bench-forgejo/modules/log/log.go

93 lines
1.8 KiB
Go
Raw Normal View History

2014-02-13 01:24:09 +05:30
// Copyright 2014 The Gogs Authors. All rights reserved.
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file.
// Package log is a wrapper of logs for short calling name.
package log
import (
2014-06-20 10:44:54 +05:30
"fmt"
2014-05-26 05:41:25 +05:30
"os"
2014-06-20 10:44:54 +05:30
"path"
2014-05-26 05:41:25 +05:30
2014-02-13 01:24:09 +05:30
"github.com/gogits/logs"
)
2014-03-25 17:17:04 +05:30
var (
2014-06-20 10:44:54 +05:30
loggers []*logs.BeeLogger
GitLogger *logs.BeeLogger
2014-03-25 17:17:04 +05:30
)
2014-02-13 01:24:09 +05:30
2014-03-23 22:02:16 +05:30
func init() {
2014-04-01 09:37:25 +05:30
NewLogger(0, "console", `{"level": 0}`)
2014-03-23 22:02:16 +05:30
}
2014-03-19 13:38:25 +05:30
func NewLogger(bufLen int64, mode, config string) {
logger := logs.NewLogger(bufLen)
isExist := false
for _, l := range loggers {
if l.Adapter == mode {
isExist = true
l = logger
}
}
if !isExist {
loggers = append(loggers, logger)
}
2014-04-11 02:06:50 +05:30
logger.SetLogFuncCallDepth(3)
2014-06-20 09:55:23 +05:30
if err := logger.SetLogger(mode, config); err != nil {
Fatal("Fail to set logger(%s): %v", mode, err)
}
2014-02-13 01:24:09 +05:30
}
2014-06-20 10:44:54 +05:30
func NewGitLogger(logPath string) {
os.MkdirAll(path.Dir(logPath), os.ModePerm)
GitLogger = logs.NewLogger(0)
GitLogger.SetLogger("file", fmt.Sprintf(`{"level":0,"filename":"%s","rotate":false}`, logPath))
}
2014-02-19 04:18:02 +05:30
func Trace(format string, v ...interface{}) {
for _, logger := range loggers {
logger.Trace(format, v...)
}
2014-02-19 04:18:02 +05:30
}
2014-03-23 21:46:17 +05:30
func Debug(format string, v ...interface{}) {
for _, logger := range loggers {
logger.Debug(format, v...)
}
2014-03-23 21:46:17 +05:30
}
2014-02-13 01:24:09 +05:30
func Info(format string, v ...interface{}) {
for _, logger := range loggers {
logger.Info(format, v...)
}
2014-02-13 01:24:09 +05:30
}
2014-02-19 04:01:16 +05:30
func Error(format string, v ...interface{}) {
for _, logger := range loggers {
logger.Error(format, v...)
}
2014-02-19 04:01:16 +05:30
}
func Warn(format string, v ...interface{}) {
for _, logger := range loggers {
logger.Warn(format, v...)
}
2014-02-19 04:01:16 +05:30
}
2014-02-19 04:18:02 +05:30
func Critical(format string, v ...interface{}) {
for _, logger := range loggers {
logger.Critical(format, v...)
}
2014-02-19 04:18:02 +05:30
}
2014-05-26 05:41:25 +05:30
func Fatal(format string, v ...interface{}) {
Error(format, v...)
for _, l := range loggers {
l.Close()
}
os.Exit(2)
}