Statistics 气流dags-用于跟踪的运行时报告
我正试图找到一种方法来捕获dag统计数据,即运行时间(开始时间、结束时间)、状态、dag id、任务id等,用于各种dag及其任务在单独的表中Statistics 气流dags-用于跟踪的运行时报告,statistics,runtime,airflow,metrics,directed-acyclic-graphs,Statistics,Runtime,Airflow,Metrics,Directed Acyclic Graphs,我正试图找到一种方法来捕获dag统计数据,即运行时间(开始时间、结束时间)、状态、dag id、任务id等,用于各种dag及其任务在单独的表中 找到了默认日志,该日志会转到elasticsearch/kibana,但不是将所需日志从那里拉回到s3表的简单方法 构建一个单独的进程来加载s3中的那些日志将具有复制的数据,而且由于生成了大量其他与系统相关的日志,将有太多的数据需要扫描和筛选 向每个dag添加函数-必须修改每个dag 还有什么其他可能的方法不能有效地获得它,任何其他气流内置功能都可以
- 找到了默认日志,该日志会转到elasticsearch/kibana,但不是将所需日志从那里拉回到s3表的简单方法
- 构建一个单独的进程来加载s3中的那些日志将具有复制的数据,而且由于生成了大量其他与系统相关的日志,将有太多的数据需要扫描和筛选
- 向每个dag添加函数-必须修改每个dag
还有什么其他可能的方法不能有效地获得它,任何其他气流内置功能都可以使用您可以尝试使用Apache气流中提供的即席查询 此选项可在“数据分析->即席查询”中找到,然后选择“气流\u db” 如果您希望获得DAG统计信息,如开始时间、结束时间等,您只需按以下格式查询即可
select start_date,end_date from dag_run where dag_id = 'your_dag_name'
上述查询返回所有DAG运行的DAG的开始时间和结束时间详细信息。如果您希望获得特定运行的详细信息,则可以添加另一个筛选条件,如下所示
select start_date,end_date from dag_run where dag_id = 'your_dag_name' and execution_date = '2021-01-01 09:12:59.0000' ##this is a sample time
您可以从树视图或图形视图中获取此执行日期。此外,您还可以获取其他统计信息,如id、dag\U id、执行日期、状态、运行id和配置
你也可以参考。链接以获取更多详细信息。您没有提到您是实时还是批量需要此信息 因为您也不想使用ES日志,所以如果它适合您的需要,您可以尝试
然而,从数据库中提取这些信息并不高效,但无论如何,如果您不想进行实时数据采集,这仍然是一个选项。谢谢,但是在Airflow2上,他们将此功能更改为数据分析->即席查询为DAG运行等,我需要在单独的表中提取这些详细信息,因此尝试通过DAG访问。