J'utilise Airflow pour gérer l'exécution et la planification des tâches ETL. Un DAG a été créé et cela fonctionne très bien. Mais est-il possible de passer des paramètres lors du déclenchement manuel du dag via cli.
Par exemple: Mon DAG s'exécute tous les jours à 01h30 et traite les données d'hier (plage horaire de 01h30 hier à 01h30 aujourd'hui). Il peut y avoir des problèmes avec la source de données. Je dois retraiter ces données (spécifier manuellement la plage de temps).
Puis-je créer un tel DAG de flux d'air, quand il est programmé, que la plage horaire par défaut est de 01h30 hier à 01h30 aujourd'hui. Ensuite, si quelque chose ne va pas avec la source de données, je dois déclencher manuellement le DAG et passer manuellement la plage de temps en tant que paramètres.
Comme je le sais airflow test
a -tp
qui peut transmettre des paramètres à la tâche. Mais ce n'est que pour tester une tâche spécifique. et airflow trigger_dag
n'a pas -tp
option. Existe-t-il un moyen de tigger_dag et de passer des paramètres au DAG, puis l'opérateur peut lire ces paramètres?
Merci!
Cela devrait fonctionner, selon la documentation du flux d'air: https://airflow.Apache.org/cli.html#trigger_dag
airflow trigger_dag -c '{"key1":1, "key2":2}' dag_id
Assurez-vous que la valeur de -c
est une chaîne json valide, donc les guillemets doubles entourant les clés sont nécessaires ici.