proxywatchd: mark confirmed-dead proxies as permanently dead
- Add DEAD_PROXY=-1 constant for permanently dead proxies - Mark proxy dead when: failed >= max_fail*2, or max_fail with fatal error - Fatal errors: refused, unreachable, auth (proxy definitely not working) - Dead proxies excluded from testing (failed >= 0 query) - Cleanup_stale also removes old dead proxies - Dashboard shows separate dead vs failing counts
This commit is contained in:
10
httpd.py
10
httpd.py
@@ -126,11 +126,17 @@ def get_db_health(db):
|
||||
).fetchone()
|
||||
stats['added_last_day'] = row[0] if row else 0
|
||||
|
||||
# Dead proxies count
|
||||
# Dead proxies count (permanently dead = -1, failing = positive)
|
||||
row = db.execute(
|
||||
'SELECT COUNT(*) FROM proxylist WHERE failed = -1'
|
||||
).fetchone()
|
||||
stats['dead_count'] = row[0] if row else 0
|
||||
|
||||
# Failing proxies count (positive fail count but not permanently dead)
|
||||
row = db.execute(
|
||||
'SELECT COUNT(*) FROM proxylist WHERE failed > 0'
|
||||
).fetchone()
|
||||
stats['dead_count'] = row[0] if row else 0
|
||||
stats['failing_count'] = row[0] if row else 0
|
||||
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
Reference in New Issue
Block a user