Purge old expired sessions
This commit is contained in:
parent
93b464b0ff
commit
c577facc24
3 changed files with 75 additions and 0 deletions
40
jobs/saved_session.go
Normal file
40
jobs/saved_session.go
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
package jobs
|
||||
|
||||
import (
|
||||
"time"
|
||||
|
||||
"git.readonly.ch/bouzoure/pop-camarades/helpers"
|
||||
"git.readonly.ch/bouzoure/pop-camarades/models"
|
||||
)
|
||||
|
||||
func CleanSavedSessions(jobName string) error {
|
||||
log := helpers.GetLogger()
|
||||
|
||||
db, err := helpers.GetDatabase()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
log.Info("fetching expired sessions", "job", jobName)
|
||||
|
||||
result := db.Unscoped().Delete(
|
||||
&models.UserSavedSession{},
|
||||
"expiration <= ?", time.Now(),
|
||||
)
|
||||
|
||||
if result.Error != nil {
|
||||
return result.Error
|
||||
}
|
||||
|
||||
if result.RowsAffected < 1 {
|
||||
log.Info("found no expired sessions", "job", jobName)
|
||||
} else {
|
||||
log.Info(
|
||||
"removed expired sessions",
|
||||
"sessions", result.RowsAffected,
|
||||
"job", jobName,
|
||||
)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue