Tools update
This commit is contained in:
@@ -354,6 +354,9 @@ Transcription control:
|
||||
RQ helpers:
|
||||
rq-info # show RQ queue summary via worker container
|
||||
rq-transcribe-requeue # requeue all failed 'transcribe' jobs back to active
|
||||
rq-clear-transcribe # purge 'transcribe' queue and clean its registries (failed/started/scheduled/etc.)
|
||||
rq-clear-default # purge 'default' queue and clean its registries
|
||||
rq-clear-all # purge both 'default' and 'transcribe' queues and registries
|
||||
|
||||
Queues (Redis):
|
||||
queues-workers-list # show worker queue sizes (LLEN) and related keys
|
||||
@@ -876,6 +879,97 @@ PY
|
||||
fi
|
||||
;;
|
||||
|
||||
rq-clear-transcribe)
|
||||
: "${REDIS_URL:=redis://redis:6379/0}"
|
||||
if command -v docker >/dev/null 2>&1 && command -v docker compose >/dev/null 2>&1; then
|
||||
docker compose exec -T podx-worker-transcribe python - <<'PY'
|
||||
import sys
|
||||
from redis import Redis
|
||||
from rq import Queue
|
||||
from rq.registry import FailedJobRegistry, StartedJobRegistry, DeferredJobRegistry, FinishedJobRegistry, ScheduledJobRegistry
|
||||
url = sys.argv[1] if len(sys.argv)>1 else 'redis://redis:6379/0'
|
||||
conn = Redis.from_url(url)
|
||||
def clear(name):
|
||||
q = Queue(name, connection=conn)
|
||||
regs = [FailedJobRegistry(q), StartedJobRegistry(q), DeferredJobRegistry(q), FinishedJobRegistry(q), ScheduledJobRegistry(q)]
|
||||
for reg in regs:
|
||||
try:
|
||||
for jid in reg.get_job_ids():
|
||||
try: reg.remove(jid, delete_job=True)
|
||||
except Exception: pass
|
||||
except Exception: pass
|
||||
try: q.empty()
|
||||
except Exception: pass
|
||||
print(f"[rq] cleared queue '{name}' and registries.")
|
||||
clear('transcribe')
|
||||
PY
|
||||
"$REDIS_URL"
|
||||
else
|
||||
echo "docker compose not found; cannot run rq inside container." >&2; exit 1
|
||||
fi
|
||||
;;
|
||||
|
||||
rq-clear-default)
|
||||
: "${REDIS_URL:=redis://redis:6379/0}"
|
||||
if command -v docker >/dev/null 2>&1 && command -v docker compose >/dev/null 2>&1; then
|
||||
docker compose exec -T podx-worker python - <<'PY'
|
||||
import sys
|
||||
from redis import Redis
|
||||
from rq import Queue
|
||||
from rq.registry import FailedJobRegistry, StartedJobRegistry, DeferredJobRegistry, FinishedJobRegistry, ScheduledJobRegistry
|
||||
url = sys.argv[1] if len(sys.argv)>1 else 'redis://redis:6379/0'
|
||||
conn = Redis.from_url(url)
|
||||
def clear(name):
|
||||
q = Queue(name, connection=conn)
|
||||
regs = [FailedJobRegistry(q), StartedJobRegistry(q), DeferredJobRegistry(q), FinishedJobRegistry(q), ScheduledJobRegistry(q)]
|
||||
for reg in regs:
|
||||
try:
|
||||
for jid in reg.get_job_ids():
|
||||
try: reg.remove(jid, delete_job=True)
|
||||
except Exception: pass
|
||||
except Exception: pass
|
||||
try: q.empty()
|
||||
except Exception: pass
|
||||
print(f"[rq] cleared queue '{name}' and registries.")
|
||||
clear('default')
|
||||
PY
|
||||
"$REDIS_URL"
|
||||
else
|
||||
echo "docker compose not found; cannot run rq inside container." >&2; exit 1
|
||||
fi
|
||||
;;
|
||||
|
||||
rq-clear-all)
|
||||
: "${REDIS_URL:=redis://redis:6379/0}"
|
||||
if command -v docker >/dev/null 2>&1 && command -v docker compose >/dev/null 2>&1; then
|
||||
docker compose exec -T podx-worker-transcribe python - <<'PY'
|
||||
import sys
|
||||
from redis import Redis
|
||||
from rq import Queue
|
||||
from rq.registry import FailedJobRegistry, StartedJobRegistry, DeferredJobRegistry, FinishedJobRegistry, ScheduledJobRegistry
|
||||
url = sys.argv[1] if len(sys.argv)>1 else 'redis://redis:6379/0'
|
||||
conn = Redis.from_url(url)
|
||||
def clear(name):
|
||||
q = Queue(name, connection=conn)
|
||||
regs = [FailedJobRegistry(q), StartedJobRegistry(q), DeferredJobRegistry(q), FinishedJobRegistry(q), ScheduledJobRegistry(q)]
|
||||
for reg in regs:
|
||||
try:
|
||||
for jid in reg.get_job_ids():
|
||||
try: reg.remove(jid, delete_job=True)
|
||||
except Exception: pass
|
||||
except Exception: pass
|
||||
try: q.empty()
|
||||
except Exception: pass
|
||||
print(f"[rq] cleared queue '{name}' and registries.")
|
||||
for name in ('default','transcribe'):
|
||||
clear(name)
|
||||
PY
|
||||
"$REDIS_URL"
|
||||
else
|
||||
echo "docker compose not found; cannot run rq inside container." >&2; exit 1
|
||||
fi
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "Unknown command: $cmd" >&2
|
||||
_help
|
||||
|
Reference in New Issue
Block a user