如何获取具有dag-id的airflow dag中正在运行的任务列表?任务之间的连接无关紧要。谢谢。
比如,我从"airflow list_dags"中得到了dag-id。
如何获取具有dag-id的airflow dag中正在运行的任务列表?任务之间的连接无关紧要。谢谢。
比如,我从"airflow list_dags"中得到了dag-id。
如果你想获取DAG内部任务列表,可以使用以下代码:
from airflow import settings
from airflow.models import TaskInstance
from airflow.utils.state import State
import logging
def print_running_tasks():
session = settings.Session()
for task in session.query(TaskInstance) \
.filter(TaskInstance.state == State.RUNNING) \
.all():
logging.info(f'task_id: {task.task_id}, dag_id: {task.dag_id}, start_date: {task.start_date}, '
f'hostname: {task.hostname}, unixname: {task.unixname}, job_id: {task.job_id}, pid: {task.pid}')
.filter()
。我认为$ airflow list_tasks [DAG-ID]
是你要找的。
your_dag.tasks
这样的东西会给你任务/操作符列表。https://airflow.apache.org/docs/apache-airflow/stable/_modules/airflow/models/dag.html#DAG.tasks
https://airflow.apache.org/docs/apache-airflow/stable/_api/airflow/models/dag/index.html#airflow.models.dag.DAG.tasks - Murilo Cunha
core__sqlalchemy_conn
的不同,答案可能会有所不同。 - nightgaunt