Add user ID to discordgo logs
This commit is contained in:
2
go.mod
2
go.mod
@@ -37,4 +37,4 @@ require (
|
||||
maunium.net/go/mauflag v1.0.0 // indirect
|
||||
)
|
||||
|
||||
replace github.com/bwmarrin/discordgo => github.com/beeper/discordgo v0.0.0-20230421234845-798d8c4943a5
|
||||
replace github.com/bwmarrin/discordgo => github.com/beeper/discordgo v0.0.0-20230425174737-526618ee92f8
|
||||
|
||||
4
go.sum
4
go.sum
@@ -1,6 +1,6 @@
|
||||
github.com/DATA-DOG/go-sqlmock v1.5.0 h1:Shsta01QNfFxHCfpW6YH2STWB0MudeXXEWMr20OEh60=
|
||||
github.com/beeper/discordgo v0.0.0-20230421234845-798d8c4943a5 h1:goe2lr+0qYbVtdidyl3UMurIGdFnXXZqmNq0vWZo4f4=
|
||||
github.com/beeper/discordgo v0.0.0-20230421234845-798d8c4943a5/go.mod h1:NJZpH+1AfhIcyQsPeuBKsUtYrRnjkyu0kIVMCHkZtRY=
|
||||
github.com/beeper/discordgo v0.0.0-20230425174737-526618ee92f8 h1:9GiqpUOVfcgn27okKcuTLgOJ2BucQlwpX0wrFj+c6WA=
|
||||
github.com/beeper/discordgo v0.0.0-20230425174737-526618ee92f8/go.mod h1:NJZpH+1AfhIcyQsPeuBKsUtYrRnjkyu0kIVMCHkZtRY=
|
||||
github.com/coreos/go-systemd/v22 v22.5.0 h1:RrqgGjYQKalulkV8NGVIfkXQf6YYmOyiJKk8iXXhfZs=
|
||||
github.com/coreos/go-systemd/v22 v22.5.0/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc=
|
||||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
|
||||
32
user.go
32
user.go
@@ -79,20 +79,24 @@ func (user *User) GetRemoteName() string {
|
||||
|
||||
var discordLog zerolog.Logger
|
||||
|
||||
func discordToZeroLevel(level int) zerolog.Level {
|
||||
switch level {
|
||||
case discordgo.LogError:
|
||||
return zerolog.ErrorLevel
|
||||
case discordgo.LogWarning:
|
||||
return zerolog.WarnLevel
|
||||
case discordgo.LogInformational:
|
||||
return zerolog.InfoLevel
|
||||
case discordgo.LogDebug:
|
||||
fallthrough
|
||||
default:
|
||||
return zerolog.DebugLevel
|
||||
}
|
||||
}
|
||||
|
||||
func init() {
|
||||
discordgo.Logger = func(msgL, caller int, format string, a ...interface{}) {
|
||||
var level zerolog.Level
|
||||
switch msgL {
|
||||
case discordgo.LogError:
|
||||
level = zerolog.ErrorLevel
|
||||
case discordgo.LogWarning:
|
||||
level = zerolog.WarnLevel
|
||||
case discordgo.LogInformational:
|
||||
level = zerolog.InfoLevel
|
||||
case discordgo.LogDebug:
|
||||
level = zerolog.DebugLevel
|
||||
}
|
||||
discordLog.WithLevel(level).Caller(caller+1).Msgf(strings.TrimSpace(format), a...)
|
||||
discordLog.WithLevel(discordToZeroLevel(msgL)).Caller(caller+1).Msgf(strings.TrimSpace(format), a...)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -563,6 +567,10 @@ func (user *User) Connect() error {
|
||||
} else {
|
||||
session.LogLevel = discordgo.LogInformational
|
||||
}
|
||||
userDiscordLog := user.log.With().Str("component", "discordgo").Logger()
|
||||
session.Logger = func(msgL, caller int, format string, a ...interface{}) {
|
||||
userDiscordLog.WithLevel(discordToZeroLevel(msgL)).Caller(caller+1).Msgf(strings.TrimSpace(format), a...)
|
||||
}
|
||||
if !session.IsUser {
|
||||
session.Identify.Intents = BotIntents
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user