apache/airflow

Some liveness checks don't actually check process

开放

#26,574 创建于 2022年9月21日

 (8 条评论) (0 个反应) (0 位负责人)Python (16,781 个派生)batch import
good first issuekind:feature

仓库指标

星标
 (44,809 个星标)
PR 合并指标
 (PR 指标待抓取)

描述

Description

Current liveness check probes use the 'airflow jobs' command which directly queries the backend DB as opposed to actually querying an endpoint or checking the status of the process itself.

e.g. Triggerer liveness probe

exec [sh -c CONNECTION_CHECK_MAX_COUNT=0 AIRFLOW__LOGGING__LOGGING_LEVEL=ERROR exec /entrypoint \
airflow jobs check --job-type TriggererJob --hostname $(hostname)] delay=10s timeout=20s period=60s #success=1 #failure=5

This command only checks the backend DB to see if there are any jobs. Additionally, the exit code is always 0 regardless of how many jobs there are. Ideally, the liveness check is done by querying some endpoint on the triggerer to see if it's still running.

Use case/motivation

Would like a liveness check that is more aware of the process rather than the stored state

Related issues

No response

Are you willing to submit a PR?

  • Yes I am willing to submit a PR!

Code of Conduct

贡献者指南