Convert notification.go to use zerolog
This commit is contained in:
parent
ff7c5cdb6b
commit
49148fc66a
1 changed files with 9 additions and 3 deletions
|
|
@ -3,7 +3,7 @@ package main
|
||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
"fmt"
|
"fmt"
|
||||||
"log/slog"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/Gleipnir-Technology/nidus-sync/db"
|
"github.com/Gleipnir-Technology/nidus-sync/db"
|
||||||
|
|
@ -11,6 +11,7 @@ import (
|
||||||
"github.com/Gleipnir-Technology/nidus-sync/db/models"
|
"github.com/Gleipnir-Technology/nidus-sync/db/models"
|
||||||
"github.com/aarondl/opt/omit"
|
"github.com/aarondl/opt/omit"
|
||||||
"github.com/aarondl/opt/omitnull"
|
"github.com/aarondl/opt/omitnull"
|
||||||
|
"github.com/rs/zerolog/log"
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
|
|
@ -42,16 +43,21 @@ func clearNotificationsOauth(ctx context.Context, user *models.User) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func notifyOauthInvalid(ctx context.Context, user *models.User) {
|
func notifyOauthInvalid(ctx context.Context, user *models.User) {
|
||||||
|
msg := "Oauth token invalidated"
|
||||||
notificationSetter := models.NotificationSetter{
|
notificationSetter := models.NotificationSetter{
|
||||||
Created: omit.From(time.Now()),
|
Created: omit.From(time.Now()),
|
||||||
Message: omit.From("Oauth token invalidated"),
|
Message: omit.From(msg),
|
||||||
Link: omit.From(NotificationPathOauthReset),
|
Link: omit.From(NotificationPathOauthReset),
|
||||||
Type: omit.From(enums.NotificationtypeOauthTokenInvalidated),
|
Type: omit.From(enums.NotificationtypeOauthTokenInvalidated),
|
||||||
}
|
}
|
||||||
err := user.InsertUserNotifications(ctx, db.PGInstance.BobDB, ¬ificationSetter)
|
err := user.InsertUserNotifications(ctx, db.PGInstance.BobDB, ¬ificationSetter)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
if strings.HasPrefix(err.Error(), "ERROR: duplicate key value violates unique constraint") {
|
||||||
|
log.Info().Str("msg", msg).Int("user_id", int(user.ID)).Msg("Refusing to add another notification with the same type")
|
||||||
|
return
|
||||||
|
}
|
||||||
LogErrorTypeInfo(err)
|
LogErrorTypeInfo(err)
|
||||||
slog.Error("Failed to insert new notification. Update this clause to detect duplicate inserts.", slog.String("err", err.Error()))
|
log.Error().Err(err).Msg("Failed to insert new notification. This is a programmer bug.")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue