Опрос ЛК ЕСИА Финанс раз в 10 секунд (было раз в минуту), повтор одной ошибки в журнале — не чаще раза в 5 мин
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi
This commit is contained in:
@@ -20,8 +20,8 @@
|
||||
"version": "2026.09.25.14"
|
||||
},
|
||||
"bj-server": {
|
||||
"fingerprint": "6731e7a62cf3261a5ec9ef4183cc75bb2b540dd08258def173bf685b8f347ebb",
|
||||
"version": "2026.09.25.32"
|
||||
"fingerprint": "16dfbfc7331a989f6344379136d8900a5ded00eb1dd9fa29af36980b1ed3f3b2",
|
||||
"version": "2026.09.29.2"
|
||||
},
|
||||
"crypto-service.jar": {
|
||||
"fingerprint": "2c4fd536bc9b1c20c69a70e8dcd374a61847b263aeb2e474c45debb01fbd8233",
|
||||
|
||||
@@ -257,11 +257,13 @@ type LKPullResult struct {
|
||||
Errors []string
|
||||
}
|
||||
|
||||
// pollLKClaims — фоновый опрос ЛК ЕСИА Финанс раз в минуту. Время ответов в
|
||||
// сервисе регламентировано, поэтому чаще опрашивать смысла нет. Ничего не
|
||||
// делает, если активное окружение ЛК не настроено (адрес/логин пустые).
|
||||
// pollLKClaims — фоновый опрос ЛК ЕСИА Финанс раз в 10 секунд: подписанная клиентом заявка
|
||||
// уходит в работу почти сразу (29.09.2026: минута — долго). Ничего не делает, если активное
|
||||
// окружение ЛК не настроено (адрес/логин пустые). Одинаковая ошибка пишется в журнал не чаще раза в 5 мин.
|
||||
func (s *Server) pollLKClaims(ctx context.Context) {
|
||||
const interval = time.Minute
|
||||
const interval = 10 * time.Second
|
||||
var lastErr string
|
||||
var lastErrAt time.Time
|
||||
ticker := time.NewTicker(interval)
|
||||
defer ticker.Stop()
|
||||
log.Printf("lk-gateway: поллер заявок ЛК ЕСИА Финанс запущен (интервал %s)", interval)
|
||||
@@ -281,9 +283,16 @@ func (s *Server) pollLKClaims(ctx context.Context) {
|
||||
res, err := PullLKClaims(cctx, s.rc, s.svc)
|
||||
cancel()
|
||||
if err != nil {
|
||||
log.Printf("lk-gateway: поллер ЛК: %v", err)
|
||||
if err.Error() != lastErr || time.Since(lastErrAt) > 5*time.Minute {
|
||||
log.Printf("lk-gateway: поллер ЛК: %v", err)
|
||||
lastErr, lastErrAt = err.Error(), time.Now()
|
||||
}
|
||||
continue
|
||||
}
|
||||
if lastErr != "" {
|
||||
log.Printf("lk-gateway: поллер ЛК: связь с ЛК восстановлена")
|
||||
lastErr = ""
|
||||
}
|
||||
if res.Fetched > 0 || len(res.Errors) > 0 {
|
||||
log.Printf("lk-gateway: поллер ЛК: получено %d, отправлено %d, отклонено %d, ошибок %d (имитация НРД: %v)",
|
||||
res.Fetched, res.Sent, res.Rejected, len(res.Errors), res.Emulated)
|
||||
|
||||
Reference in New Issue
Block a user