在Apache Airflow中,你可以使用PythonOperator来执行任务,并在任务成功或失败时打印日志信息。
以下是一个示例代码,展示了如何在任务成功时打印“查询成功”,在任务失败时打印“查询失败”。
from airflow import DAG
from airflow.operators.python_operator import PythonOperator
from datetime import datetime
def run_query():
try:
# 在这里执行查询操作
# 如果查询成功,打印“查询成功”
print("查询成功")
except Exception as e:
# 如果查询失败,打印“查询失败”
print("查询失败")
raise e
default_args = {
'start_date': datetime(2021, 1, 1),
}
with DAG('example_dag', schedule_interval='@daily', default_args=default_args, catchup=False) as dag:
task = PythonOperator(
task_id='run_query_task',
python_callable=run_query,
dag=dag
)
在上面的示例代码中,我们使用了PythonOperator来创建一个任务,并将其命名为run_query_task
。该任务的执行逻辑在run_query
函数中定义。在函数中,我们使用try-except
语句来捕获可能的异常。如果查询成功,我们使用print
函数打印“查询成功”。如果查询失败,我们使用print
函数打印“查询失败”,并使用raise
语句重新抛出异常。
当你运行这个DAG时,任务将按照指定的调度间隔定期执行。在任务成功或失败时,你将在Airflow的日志中看到相应的输出。成功的输出将显示“查询成功”,失败的输出将显示“查询失败”。