diff options
author | 2022-07-19 09:47:55 +0100 | |
---|---|---|
committer | 2022-07-19 10:47:55 +0200 | |
commit | 098dbe6ff4f59652181c8e0e3873fbfcf0e65ea3 (patch) | |
tree | 17036ad9db68c3080e1e91279c8bce9f9ea6e5c3 /internal/log/trimhook.go | |
parent | [bugfix] Markdown format fixes (#718) (diff) | |
download | gotosocial-098dbe6ff4f59652181c8e0e3873fbfcf0e65ea3.tar.xz |
[chore] use our own logging implementation (#716)
* first commit
Signed-off-by: kim <grufwub@gmail.com>
* replace logging with our own log library
Signed-off-by: kim <grufwub@gmail.com>
* fix imports
Signed-off-by: kim <grufwub@gmail.com>
* fix log imports
Signed-off-by: kim <grufwub@gmail.com>
* add license text
Signed-off-by: kim <grufwub@gmail.com>
* fix package import cycle between config and log package
Signed-off-by: kim <grufwub@gmail.com>
* fix empty kv.Fields{} being passed to WithFields()
Signed-off-by: kim <grufwub@gmail.com>
* fix uses of log.WithFields() with whitespace issues and empty slices
Signed-off-by: kim <grufwub@gmail.com>
* *linter related grumbling*
Signed-off-by: kim <grufwub@gmail.com>
* gofmt the codebase! also fix more log.WithFields() formatting issues
Signed-off-by: kim <grufwub@gmail.com>
* update testrig code to match new changes
Signed-off-by: kim <grufwub@gmail.com>
* fix error wrapping in non fmt.Errorf function
Signed-off-by: kim <grufwub@gmail.com>
* add benchmarking of log.Caller() vs non-cached
Signed-off-by: kim <grufwub@gmail.com>
* fix syslog tests, add standard build tags to test runner to ensure consistency
Signed-off-by: kim <grufwub@gmail.com>
* make syslog tests more robust
Signed-off-by: kim <grufwub@gmail.com>
* fix caller depth arithmatic (is that how you spell it?)
Signed-off-by: kim <grufwub@gmail.com>
* update to use unkeyed fields in kv.Field{} instances
Signed-off-by: kim <grufwub@gmail.com>
* update go-kv library
Signed-off-by: kim <grufwub@gmail.com>
* update libraries list
Signed-off-by: kim <grufwub@gmail.com>
* fuck you linter get nerfed
Signed-off-by: kim <grufwub@gmail.com>
Co-authored-by: tobi <31960611+tsmethurst@users.noreply.github.com>
Diffstat (limited to 'internal/log/trimhook.go')
-rw-r--r-- | internal/log/trimhook.go | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/internal/log/trimhook.go b/internal/log/trimhook.go deleted file mode 100644 index c9faccb90..000000000 --- a/internal/log/trimhook.go +++ /dev/null @@ -1,53 +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 ( - "github.com/sirupsen/logrus" -) - -// trimHook is a wrapper round a logrus hook that trims the *entry.Message -// to no more than 1700 characters before sending it through to the wrapped hook, -// to avoid spamming syslog with messages that are too long for it. -type trimHook struct { - wrappedHook logrus.Hook -} - -func (t *trimHook) Fire(e *logrus.Entry) error { - // only copy/truncate if we need to - if len(e.Message) < 1700 { - return t.wrappedHook.Fire(e) - } - - // it's too long, truncate + fire a copy of the entry so we don't meddle with the original - return t.wrappedHook.Fire(&logrus.Entry{ - Logger: e.Logger, - Data: e.Data, - Time: e.Time, - Level: e.Level, - Caller: e.Caller, - Message: e.Message[:1696] + "...", // truncate - Buffer: e.Buffer, - Context: e.Context, - }) -} - -func (t *trimHook) Levels() []logrus.Level { - return t.wrappedHook.Levels() -} |