65 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
package report
 | 
						|
 | 
						|
import (
 | 
						|
	"fmt"
 | 
						|
	"strings"
 | 
						|
 | 
						|
	"github.com/golangci/golangci-lint/pkg/logutils"
 | 
						|
)
 | 
						|
 | 
						|
type LogWrapper struct {
 | 
						|
	rd      *Data
 | 
						|
	tags    []string
 | 
						|
	origLog logutils.Log
 | 
						|
}
 | 
						|
 | 
						|
func NewLogWrapper(log logutils.Log, reportData *Data) *LogWrapper {
 | 
						|
	return &LogWrapper{
 | 
						|
		rd:      reportData,
 | 
						|
		origLog: log,
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
func (lw LogWrapper) Fatalf(format string, args ...interface{}) {
 | 
						|
	lw.origLog.Fatalf(format, args...)
 | 
						|
}
 | 
						|
 | 
						|
func (lw LogWrapper) Panicf(format string, args ...interface{}) {
 | 
						|
	lw.origLog.Panicf(format, args...)
 | 
						|
}
 | 
						|
 | 
						|
func (lw LogWrapper) Errorf(format string, args ...interface{}) {
 | 
						|
	lw.origLog.Errorf(format, args...)
 | 
						|
	lw.rd.Error = fmt.Sprintf(format, args...)
 | 
						|
}
 | 
						|
 | 
						|
func (lw LogWrapper) Warnf(format string, args ...interface{}) {
 | 
						|
	lw.origLog.Warnf(format, args...)
 | 
						|
	w := Warning{
 | 
						|
		Tag:  strings.Join(lw.tags, "/"),
 | 
						|
		Text: fmt.Sprintf(format, args...),
 | 
						|
	}
 | 
						|
 | 
						|
	lw.rd.Warnings = append(lw.rd.Warnings, w)
 | 
						|
}
 | 
						|
 | 
						|
func (lw LogWrapper) Infof(format string, args ...interface{}) {
 | 
						|
	lw.origLog.Infof(format, args...)
 | 
						|
}
 | 
						|
 | 
						|
func (lw LogWrapper) Child(name string) logutils.Log {
 | 
						|
	c := lw
 | 
						|
	c.origLog = lw.origLog.Child(name)
 | 
						|
	c.tags = append([]string{}, lw.tags...)
 | 
						|
	c.tags = append(c.tags, name)
 | 
						|
	return c
 | 
						|
}
 | 
						|
 | 
						|
func (lw LogWrapper) SetLevel(level logutils.LogLevel) {
 | 
						|
	lw.origLog.SetLevel(level)
 | 
						|
}
 | 
						|
 | 
						|
func (lw LogWrapper) GoString() string {
 | 
						|
	return fmt.Sprintf("lw: %+v, orig log: %#v", lw, lw.origLog)
 | 
						|
}
 |