commit 4a9538593c6110b5972d802aebf1c4990edafe38
parent 2eea3d57e0624d4472e50b8cf37facd3f33c6834
Author: kim <89579420+NyaaaWhatsUpDoc@users.noreply.github.com>
Date: Sun, 20 Nov 2022 16:40:15 +0000
[chore] simplify logging to remove "safetywriter" given os.File has concurrency protection (#1083)
Signed-off-by: kim <grufwub@gmail.com>
Signed-off-by: kim <grufwub@gmail.com>
Diffstat:
2 files changed, 4 insertions(+), 46 deletions(-)
diff --git a/internal/log/log.go b/internal/log/log.go
@@ -20,7 +20,6 @@ package log
import (
"fmt"
- "io"
"log/syslog"
"os"
"strings"
@@ -39,10 +38,6 @@ var (
// lvlstrs is the lookup table of log levels to strings.
lvlstrs = level.Default()
- // Preprepared stdout/stderr log writers.
- stdout = &safewriter{w: os.Stdout}
- stderr = &safewriter{w: os.Stderr}
-
// Syslog output, only set if enabled.
sysout *syslog.Writer
@@ -187,12 +182,12 @@ func printf(depth int, fields []kv.Field, s string, a ...interface{}) {
}
// Write to log and release
- _, _ = stdout.Write(buf.B)
+ _, _ = os.Stdout.Write(buf.B)
putBuf(buf)
}
func logf(depth int, lvl level.LEVEL, fields []kv.Field, s string, a ...interface{}) {
- var out io.Writer
+ var out *os.File
// Check if enabled.
if lvl > Level() {
@@ -202,9 +197,9 @@ func logf(depth int, lvl level.LEVEL, fields []kv.Field, s string, a ...interfac
// Split errors to stderr,
// all else goes to stdout.
if lvl <= level.ERROR {
- out = stderr
+ out = os.Stderr
} else {
- out = stdout
+ out = os.Stdout
}
// Acquire buffer
diff --git a/internal/log/writer.go b/internal/log/writer.go
@@ -1,37 +0,0 @@
-/*
- GoToSocial
- Copyright (C) 2021-2022 GoToSocial Authors admin@gotosocial.org
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU Affero General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU Affero General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-package log
-
-import (
- "io"
- "sync"
-)
-
-// safewriter wraps a writer to provide mutex safety on write.
-type safewriter struct {
- w io.Writer
- m sync.Mutex
-}
-
-func (w *safewriter) Write(b []byte) (int, error) {
- w.m.Lock()
- n, err := w.w.Write(b)
- w.m.Unlock()
- return n, err
-}