summaryrefslogtreecommitdiffstats
path: root/modules
diff options
context:
space:
mode:
authorwxiaoguang <wxiaoguang@gmail.com>2022-05-04 00:03:34 +0800
committerGitHub <noreply@github.com>2022-05-03 18:03:34 +0200
commit730420b6b32414db7fcd12ede87712b0f960de7b (patch)
treeef1526d30dcfea82a00b2df70c4078b41fb4d2d1 /modules
parent982b726b0829686cc49543c6aee696a4b24d833f (diff)
downloadgitea-730420b6b32414db7fcd12ede87712b0f960de7b.tar.gz
gitea-730420b6b32414db7fcd12ede87712b0f960de7b.zip
Only set CanColorStdout / CanColorStderr to true if the stdout/stderr is a terminal (#19581)
Diffstat (limited to 'modules')
-rw-r--r--modules/log/console_other.go21
1 files changed, 21 insertions, 0 deletions
diff --git a/modules/log/console_other.go b/modules/log/console_other.go
new file mode 100644
index 0000000000..b5cac55b52
--- /dev/null
+++ b/modules/log/console_other.go
@@ -0,0 +1,21 @@
+// Copyright 2022 The Gitea Authors. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+//go:build !windows
+
+package log
+
+import (
+ "os"
+
+ "github.com/mattn/go-isatty"
+)
+
+func init() {
+ // when running gitea as a systemd unit with logging set to console, the output can not be colorized,
+ // otherwise it spams the journal / syslog with escape sequences like "#033[0m#033[32mcmd/web.go:102:#033[32m"
+ // this file covers non-windows platforms.
+ CanColorStdout = isatty.IsTerminal(os.Stdout.Fd())
+ CanColorStderr = isatty.IsTerminal(os.Stderr.Fd())
+}