es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Tags:  , ,

Answer

  1. Avatar for 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ámetros dag_id y run_id al objeto DagRun 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 objeto DagRun:

    from airflow.models import DagBag, DagRun
    
    dag_id = 'mi_dag'
    run_id = 'scheduled__2021-11-30T09:30:00+00:00'
    
    dag_bag = DagBag()
    dag = dag_bag.get_dag(dag_id)
    
    dag_run = DagRun.find(dag_id=dag_id, run_id=run_id)
    
    if dag_run:
        dag_run_obj = dag_run[0]
        # imprime los detalles de la ejecución del DAG
        print(dag_run_obj.dag_id)
        print(dag_run_obj.run_id)
        print(dag_run_obj.state)
    else:
        print('Ejecución del DAG no encontrada para run_id:', run_id)
    

    En el código anterior, primero cargamos el DAG utilizando el objeto DagBag. Luego usamos el método DagRun.find() para buscar el objeto de ejecución del DAG utilizando los parámetros dag_id y run_id. Si se encuentra el objeto de ejecución del DAG, imprimimos los detalles relevantes como dag_id, run_id y state. 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.

Comments are closed.