Statistics 获取dag运行时间的统计信息

Statistics 获取dag运行时间的统计信息,statistics,report,airflow,directed-acyclic-graphs,Statistics,Report,Airflow,Directed Acyclic Graphs,我正在尝试从气流中导出dag统计数据。statsd输出不是很有用,所以我决定基本上运行一个dag来查询SQL并将其导出为XDB 因此,创建一个DAG来查询postgres数据库非常简单。然而,我对模式有点困惑。我会想: select run_id, start_date, end_date from dag_run where dag_id= 'blah'; 可以这样做,但endend\u date似乎从未填充 我真正想要的是dag运行开始的总时间(第一个作业开始时,而不是作业第一次进入运行状

我正在尝试从气流中导出dag统计数据。statsd输出不是很有用,所以我决定基本上运行一个dag来查询SQL并将其导出为XDB

因此,创建一个DAG来查询postgres数据库非常简单。然而,我对模式有点困惑。我会想:

select run_id, start_date, end_date from dag_run where dag_id= 'blah';
可以这样做,但end
end\u date
似乎从未填充


我真正想要的是dag运行开始的总时间(第一个作业开始时,而不是作业第一次进入
运行状态时),以及dag进入
成功状态的时间。

尝试点击
任务实例
表:

选择执行日期
,MIN(开始日期)作为开始
,最大值(结束日期)为结束
,最大(结束日期)-最小(开始日期)作为持续时间
从task_实例
其中dag_id='blah'
状态=‘成功’
按执行日期分组
按执行日期描述的订单

尝试点击
任务\u实例
表:

选择执行日期
,MIN(开始日期)作为开始
,最大值(结束日期)为结束
,最大(结束日期)-最小(开始日期)作为持续时间
从task_实例
其中dag_id='blah'
状态=‘成功’
按执行日期分组
按执行日期描述的订单

您能建议我们如何在Python中实现相同的概念的同时捕获相同的MAX(end_date)吗script@Ravi是否有任何Python脚本,或者将使用可用气流和所有相关配置执行的脚本?我们有几个dag,希望捕获每个dag的最大结束日期。我们如何在python脚本中保留该功能,我们将使用该脚本编写dag并每天运行它。。你能帮我提些建议吗?你想提出一个问题,描述一下你的要求。看起来使用Aiflow代码可以帮助您实现这一点:您能建议我们如何在Python中实现相同的概念时捕获相同的MAX(end_date)吗script@Ravi任何Python脚本,或者在气流可用和所有相关配置的情况下执行?我们有几个dag,希望捕获每个dag的最大结束日期。我们如何在python脚本中保留该功能,我们将使用该脚本编写dag并每天运行它。。你能帮我提些建议吗?你想提出一个问题,描述一下你的要求。看起来使用Aiflow代码可以帮助您实现: