fix: 更新错误时未停止后续流程,日志修改

This commit is contained in:
Skyxim 2022-05-26 23:13:36 +08:00
parent a71fd3b4df
commit 527a602eba
2 changed files with 7 additions and 2 deletions

View File

@ -59,7 +59,7 @@ func (f *fetcher) Initial() (any, error) {
isLocal = true isLocal = true
if f.interval != 0 && modTime.Add(f.interval).Before(time.Now()) { if f.interval != 0 && modTime.Add(f.interval).Before(time.Now()) {
defer func() { defer func() {
log.Infoln("[Provider] %s's proxies not updated for a long time") log.Infoln("[Provider] %s's proxies not updated for a long time, force refresh", f.Name())
go f.update() go f.update()
}() }()
} }
@ -160,11 +160,14 @@ func (f *fetcher) update() (same bool, err error) {
elm, same, err := f.Update() elm, same, err := f.Update()
if err != nil { if err != nil {
log.Warnln("[Provider] %s pull error: %s", f.Name(), err.Error()) log.Warnln("[Provider] %s pull error: %s", f.Name(), err.Error())
return
} }
if same { if same {
log.Debugln("[Provider] %s's proxies doesn't change", f.Name()) log.Debugln("[Provider] %s's proxies doesn't change", f.Name())
return
} }
if f.onUpdate != nil { if f.onUpdate != nil {
f.onUpdate(elm) f.onUpdate(elm)
} }

View File

@ -58,7 +58,7 @@ func (f *fetcher) Initial() (interface{}, error) {
hasLocal = true hasLocal = true
if f.interval != 0 && modTime.Add(f.interval).Before(time.Now()) { if f.interval != 0 && modTime.Add(f.interval).Before(time.Now()) {
defer func() { defer func() {
log.Infoln("[Provider] %s's rules not updated for a long time", f.Name()) log.Infoln("[Provider] %s's rules not updated for a long time, force refresh", f.Name())
go f.update() go f.update()
}() }()
} }
@ -186,10 +186,12 @@ func (f *fetcher) update() (same bool, err error) {
elm, same, err := f.Update() elm, same, err := f.Update()
if err != nil { if err != nil {
log.Warnln("[Provider] %s pull error: %s", f.Name(), err.Error()) log.Warnln("[Provider] %s pull error: %s", f.Name(), err.Error())
return
} }
if same { if same {
log.Debugln("[Provider] %s's rules doesn't change", f.Name()) log.Debugln("[Provider] %s's rules doesn't change", f.Name())
return
} }
log.Infoln("[Provider] %s's rules update", f.Name()) log.Infoln("[Provider] %s's rules update", f.Name())