update steam profiles only once a day
This commit is contained in:
38
main.go
38
main.go
@@ -61,19 +61,33 @@ func housekeeping() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// update players from steam
|
// update players from steam
|
||||||
tPlayerNeedSteamUpdate, err := db.Player.Query().Where(
|
var lastUpdated time.Time
|
||||||
player.SteamUpdatedLTE(time.Now().UTC().Add(dur * -1)),
|
err = rdc.Get(context.Background(), utils.CachePrefix+"last_updated_profiles", lastUpdated)
|
||||||
).All(context.Background())
|
if err != nil || time.Since(lastUpdated) >= (time.Hour*24) {
|
||||||
if err != nil {
|
tPlayerNeedSteamUpdate, err := db.Player.Query().Where(
|
||||||
log.Errorf("[HK] Can't query players: %v", err)
|
player.SteamUpdatedLTE(time.Now().UTC().Add(dur * -1)),
|
||||||
continue
|
).All(context.Background())
|
||||||
}
|
|
||||||
|
|
||||||
if len(tPlayerNeedSteamUpdate) > 0 {
|
|
||||||
log.Infof("[HK] Refreshing %d profiles from steam", len(tPlayerNeedSteamUpdate))
|
|
||||||
_, err = utils.PlayerFromSteam(tPlayerNeedSteamUpdate, db, conf.Steam.APIKey, rL)
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Warningf("[HK] Unable to update profiles from steam: %v", err)
|
log.Errorf("[HK] Can't query players: %v", err)
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(tPlayerNeedSteamUpdate) > 0 {
|
||||||
|
log.Infof("[HK] Updating %d profiles from steam", len(tPlayerNeedSteamUpdate))
|
||||||
|
_, err = utils.PlayerFromSteam(tPlayerNeedSteamUpdate, db, conf.Steam.APIKey, rL)
|
||||||
|
if err != nil {
|
||||||
|
log.Warningf("[HK] Unable to update profiles from steam: %v", err)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
err = rdc.Set(&cache.Item{
|
||||||
|
Ctx: context.Background(),
|
||||||
|
Key: utils.CachePrefix + "last_updated_profiles",
|
||||||
|
Value: time.Now().UTC(),
|
||||||
|
TTL: time.Hour * 24 * 30,
|
||||||
|
SkipLocalCache: true,
|
||||||
|
})
|
||||||
|
if err != nil {
|
||||||
|
log.Errorf("[HK] Failure setting cache: %v", err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -209,7 +209,8 @@ type (
|
|||||||
|
|
||||||
const (
|
const (
|
||||||
shareCodeURLEntry = "https://api.steampowered.com/ICSGOPlayers_730/GetNextMatchSharingCode/v1?key=%s&steamid=%d&steamidkey=%s&knowncode=%s"
|
shareCodeURLEntry = "https://api.steampowered.com/ICSGOPlayers_730/GetNextMatchSharingCode/v1?key=%s&steamid=%d&steamidkey=%s&knowncode=%s"
|
||||||
SideMetaCacheKey = "csgowtfd_side_meta_%d"
|
CachePrefix = "csgowtfd_"
|
||||||
|
SideMetaCacheKey = CachePrefix + "side_meta_%d"
|
||||||
)
|
)
|
||||||
|
|
||||||
//goland:noinspection SpellCheckingInspection
|
//goland:noinspection SpellCheckingInspection
|
||||||
|
Reference in New Issue
Block a user