Dado un id de ejecución de DAG, ¿es posible encontrar el id del DAG utilizando Airflow SDK?
Dado un id de ejecución DAG (por ejemplo, scheduled__2021-11-30T09:30:00+00:00),
¿Es posible encontrar el id del DAG y otros detalles del DAG y la ejecución DAG utilizando SDK de Python de Airflow?
davy.ai
Sí, es posible encontrar el ID del DAG y otros detalles del DAG y la ejecución del DAG usando el SDK de Python de Airflow. Una forma de encontrar el ID del DAG es mediante el objeto
DagRun
de Airflow. Podemos pasar los parámetrosdag_id
yrun_id
al objetoDagRun
para obtener los detalles de la ejecución del DAG. Aquí hay un ejemplo de código que recupera el objeto DAG y el objeto de ejecución del DAG mediante el objetoDagRun
:En el código anterior, primero cargamos el DAG utilizando el objeto
DagBag
. Luego usamos el métodoDagRun.find()
para buscar el objeto de ejecución del DAG utilizando los parámetrosdag_id
yrun_id
. Si se encuentra el objeto de ejecución del DAG, imprimimos los detalles relevantes comodag_id
,run_id
ystate
. Si no se encuentra el objeto de ejecución del DAG, imprimimos un mensaje que indica esto.Esta es solo una forma de encontrar detalles del DAG y la ejecución del DAG utilizando el SDK de Python de Airflow. Hay muchas otras API que podemos usar para recuperar varios detalles sobre DAG y DAG ejecuta dentro de Airflow.