chore(GODT-2444): Bad event info
This commit is contained in:
parent
53d5619c51
commit
04a7a81e27
|
@ -56,7 +56,7 @@ func (bridge *Bridge) handleUserEvent(ctx context.Context, user *user.User, even
|
|||
bridge.handleUserDeauth(ctx, user)
|
||||
|
||||
case events.UserBadEvent:
|
||||
bridge.handleUserBadEvent(ctx, user, event.Error)
|
||||
bridge.handleUserBadEvent(ctx, user, event)
|
||||
|
||||
case events.UncategorizedEventError:
|
||||
bridge.handleUncategorizedErrorEvent(event)
|
||||
|
@ -140,11 +140,15 @@ func (bridge *Bridge) handleUserDeauth(ctx context.Context, user *user.User) {
|
|||
}, bridge.usersLock)
|
||||
}
|
||||
|
||||
func (bridge *Bridge) handleUserBadEvent(ctx context.Context, user *user.User, err error) {
|
||||
func (bridge *Bridge) handleUserBadEvent(ctx context.Context, user *user.User, event events.UserBadEvent) {
|
||||
safe.Lock(func() {
|
||||
if rerr := bridge.reporter.ReportMessageWithContext("Failed to handle event", reporter.Context{
|
||||
"error_type": fmt.Sprintf("%T", internal.ErrCause(err)),
|
||||
"error": err,
|
||||
"user_id": user.ID(),
|
||||
"old_event_id": event.OldEventID,
|
||||
"new_event_id": event.NewEventID,
|
||||
"event_info": event.EventInfo,
|
||||
"error": event.Error,
|
||||
"error_type": fmt.Sprintf("%T", internal.ErrCause(event.Error)),
|
||||
}); rerr != nil {
|
||||
logrus.WithError(rerr).Error("Failed to report failed event handling")
|
||||
}
|
||||
|
|
|
@ -103,12 +103,23 @@ func (event UserDeauth) String() string {
|
|||
type UserBadEvent struct {
|
||||
eventBase
|
||||
|
||||
UserID string
|
||||
Error error
|
||||
UserID string
|
||||
OldEventID string
|
||||
NewEventID string
|
||||
EventInfo string
|
||||
|
||||
Error error
|
||||
}
|
||||
|
||||
func (event UserBadEvent) String() string {
|
||||
return fmt.Sprintf("UserBadEvent: UserID: %s, Error: %s", event.UserID, event.Error)
|
||||
return fmt.Sprintf(
|
||||
"UserBadEvent: UserID: %s, OldEventID: %s, NewEventID: %s, EventInfo: %v, Error: %s",
|
||||
event.UserID,
|
||||
event.OldEventID,
|
||||
event.NewEventID,
|
||||
event.EventInfo,
|
||||
event.Error,
|
||||
)
|
||||
}
|
||||
|
||||
// UserDeleted is emitted when a user has been deleted.
|
||||
|
|
|
@ -693,8 +693,11 @@ func (user *User) doEventPoll(ctx context.Context) error {
|
|||
user.log.WithField("event", event).Warn("Failed to handle API event")
|
||||
|
||||
user.eventCh.Enqueue(events.UserBadEvent{
|
||||
UserID: user.ID(),
|
||||
Error: err,
|
||||
UserID: user.ID(),
|
||||
OldEventID: user.vault.EventID(),
|
||||
NewEventID: event.EventID,
|
||||
EventInfo: event.String(),
|
||||
Error: err,
|
||||
})
|
||||
|
||||
return fmt.Errorf("failed to handle event due to client error: %w", err)
|
||||
|
|
Loading…
Reference in New Issue