要捕获Airflow任务的持续时间,可以使用Python的datetime模块来计算时间差。以下是一个不访问数据库的解决方案的示例代码:
from datetime import datetime
# 定义一个函数来计算任务持续时间
def calculate_task_duration(start_time, end_time):
duration = end_time - start_time
return duration.total_seconds()
# 在任务开始时获取当前时间
start_time = datetime.now()
# 执行需要计时的任务
# ...
# 在任务结束时获取当前时间
end_time = datetime.now()
# 计算任务持续时间
task_duration = calculate_task_duration(start_time, end_time)
print("任务持续时间:{}秒".format(task_duration))
在上面的示例中,我们首先定义了一个calculate_task_duration
函数,该函数接受任务的开始时间和结束时间作为参数,并使用total_seconds()
方法来计算时间差的秒数。
然后,在任务开始时获取当前时间作为开始时间,任务结束时获取当前时间作为结束时间。之后,我们调用calculate_task_duration
函数来计算任务的持续时间,并将其打印出来。
上一篇:不访问每个节点的CVRP