Chore: Disable default golangci-lint filter (#29751)
* Disable default golangci-lint filter Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com> * Chore: Fix linter warnings Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
This commit is contained in:
+26
-9
@@ -55,11 +55,15 @@ func (l *MuxWriter) Write(b []byte) (int, error) {
|
||||
}
|
||||
|
||||
// set os.File in writer.
|
||||
func (l *MuxWriter) SetFd(fd *os.File) {
|
||||
func (l *MuxWriter) setFD(fd *os.File) error {
|
||||
if l.fd != nil {
|
||||
l.fd.Close()
|
||||
if err := l.fd.Close(); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
l.fd = fd
|
||||
return nil
|
||||
}
|
||||
|
||||
// create a FileLogWriter returning as LoggerInterface.
|
||||
@@ -98,13 +102,17 @@ func (w *FileLogWriter) StartLogger() error {
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
w.mw.SetFd(fd)
|
||||
if err := w.mw.setFD(fd); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return w.initFd()
|
||||
}
|
||||
|
||||
func (w *FileLogWriter) docheck(size int) {
|
||||
w.startLock.Lock()
|
||||
defer w.startLock.Unlock()
|
||||
|
||||
if w.Rotate && ((w.Maxlines > 0 && w.maxlinesCurlines >= w.Maxlines) ||
|
||||
(w.Maxsize > 0 && w.maxsizeCursize >= w.Maxsize) ||
|
||||
(w.Daily && time.Now().Day() != w.dailyOpendate)) {
|
||||
@@ -119,6 +127,9 @@ func (w *FileLogWriter) docheck(size int) {
|
||||
|
||||
func (w *FileLogWriter) createLogFile() (*os.File, error) {
|
||||
// Open the log file
|
||||
// We can ignore G304 here since we can't unconditionally lock these log files down to be readable only
|
||||
// by the owner
|
||||
// nolint:gosec
|
||||
return os.OpenFile(w.Filename, os.O_WRONLY|os.O_APPEND|os.O_CREATE, 0644)
|
||||
}
|
||||
|
||||
@@ -187,7 +198,9 @@ func (w *FileLogWriter) DoRotate() error {
|
||||
defer w.mw.Unlock()
|
||||
|
||||
fd := w.mw.fd
|
||||
fd.Close()
|
||||
if err := fd.Close(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// close fd before rename
|
||||
// Rename the file to its newfound home
|
||||
@@ -228,8 +241,8 @@ func (w *FileLogWriter) deleteOldLog() {
|
||||
}
|
||||
|
||||
// destroy file logger, close file writer.
|
||||
func (w *FileLogWriter) Close() {
|
||||
w.mw.fd.Close()
|
||||
func (w *FileLogWriter) Close() error {
|
||||
return w.mw.fd.Close()
|
||||
}
|
||||
|
||||
// flush file logger.
|
||||
@@ -242,18 +255,22 @@ func (w *FileLogWriter) Flush() {
|
||||
}
|
||||
|
||||
// Reload file logger
|
||||
func (w *FileLogWriter) Reload() {
|
||||
func (w *FileLogWriter) Reload() error {
|
||||
// block Logger's io.Writer
|
||||
w.mw.Lock()
|
||||
defer w.mw.Unlock()
|
||||
|
||||
// Close
|
||||
fd := w.mw.fd
|
||||
fd.Close()
|
||||
if err := fd.Close(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// Open again
|
||||
err := w.StartLogger()
|
||||
if err != nil {
|
||||
fmt.Fprintf(os.Stderr, "Reload StartLogger: %s\n", err)
|
||||
return err
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -23,9 +23,10 @@ func TestLogFile(t *testing.T) {
|
||||
require.NotNil(t, fileLogWrite)
|
||||
|
||||
t.Cleanup(func() {
|
||||
fileLogWrite.Close()
|
||||
err := os.Remove(fileLogWrite.Filename)
|
||||
require.NoError(t, err)
|
||||
err := fileLogWrite.Close()
|
||||
assert.NoError(t, err)
|
||||
err = os.Remove(fileLogWrite.Filename)
|
||||
assert.NoError(t, err)
|
||||
})
|
||||
|
||||
fileLogWrite.Filename = "grafana_test.log"
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
package log
|
||||
|
||||
type DisposableHandler interface {
|
||||
Close()
|
||||
Close() error
|
||||
}
|
||||
|
||||
type ReloadableHandler interface {
|
||||
Reload()
|
||||
Reload() error
|
||||
}
|
||||
|
||||
+24
-6
@@ -69,6 +69,10 @@ func Infof(format string, v ...interface{}) {
|
||||
Root.Info(message)
|
||||
}
|
||||
|
||||
func Warn(msg string, v ...interface{}) {
|
||||
Root.Warn(msg, v...)
|
||||
}
|
||||
|
||||
func Warnf(format string, v ...interface{}) {
|
||||
var message string
|
||||
if len(v) > 0 {
|
||||
@@ -90,21 +94,33 @@ func Errorf(skip int, format string, v ...interface{}) {
|
||||
|
||||
func Fatalf(skip int, format string, v ...interface{}) {
|
||||
Root.Crit(fmt.Sprintf(format, v...))
|
||||
Close()
|
||||
if err := Close(); err != nil {
|
||||
fmt.Fprintf(os.Stderr, "Failed to close log: %s\n", err)
|
||||
}
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
func Close() {
|
||||
func Close() error {
|
||||
var err error
|
||||
for _, logger := range loggersToClose {
|
||||
logger.Close()
|
||||
if e := logger.Close(); e != nil && err == nil {
|
||||
err = e
|
||||
}
|
||||
}
|
||||
loggersToClose = make([]DisposableHandler, 0)
|
||||
|
||||
return err
|
||||
}
|
||||
|
||||
func Reload() {
|
||||
// Reload reloads all loggers.
|
||||
func Reload() error {
|
||||
for _, logger := range loggersToReload {
|
||||
logger.Reload()
|
||||
if err := logger.Reload(); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
var logLevels = map[string]log15.Lvl{
|
||||
@@ -164,7 +180,9 @@ func getLogFormat(format string) log15.Format {
|
||||
}
|
||||
|
||||
func ReadLoggingConfig(modes []string, logsPath string, cfg *ini.File) error {
|
||||
Close()
|
||||
if err := Close(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
defaultLevelName, _ := getLogLevelFromConfig("log", "info", cfg)
|
||||
defaultFilters := getFilters(util.SplitString(cfg.Section("log").Key("filters").String()))
|
||||
|
||||
@@ -77,8 +77,8 @@ func (sw *SysLogHandler) Log(r *log15.Record) error {
|
||||
return err
|
||||
}
|
||||
|
||||
func (sw *SysLogHandler) Close() {
|
||||
sw.syslog.Close()
|
||||
func (sw *SysLogHandler) Close() error {
|
||||
return sw.syslog.Close()
|
||||
}
|
||||
|
||||
var facilities = map[string]syslog.Priority{
|
||||
|
||||
@@ -18,5 +18,6 @@ func (sw *SysLogHandler) Log(r *log15.Record) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (sw *SysLogHandler) Close() {
|
||||
func (sw *SysLogHandler) Close() error {
|
||||
return nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user