Airflow 中的审计日志¶
概述¶
审计日志是任何需要保持高级别安全性和合规性的系统的关键组成部分。它们提供了一种跟踪用户操作和系统事件的方法,可用于解决问题、检测安全漏洞并确保法规遵从性。
在 Airflow 中,审计日志用于跟踪 DAG 和任务执行期间发生的用户操作和系统事件。它们存储在数据库中,可以通过 Airflow UI 访问。
要查看审计日志,用户需要具有 审计 日志.can_read
权限。此类用户将能够查看所有审计日志,而与应用的 DAG 权限无关。
审计日志级别¶
审计日志存在于任务级别和用户级别。
任务级别:在任务级别,审计日志捕获与任务执行相关的信息,例如任务的开始时间、结束时间和状态。
用户级别:在用户级别,审计日志捕获与用户操作相关的信息,例如创建、修改或删除 DAG 或任务。
审计日志位置¶
可以通过 Airflow UI 访问审计日志。它们位于“浏览”选项卡下,可以通过从下拉菜单中选择“审计日志”来查看。
事件类型¶
Airflow 提供了一组预定义的事件,可以在审计日志中跟踪这些事件。这些事件包括但不限于:
trigger
:触发 DAG[variable,connection].create
:用户创建了连接或变量[variable,connection].edit
:用户修改了连接或变量[variable,connection].delete
:用户删除了连接或变量delete
:用户删除了 DAG 或任务failed
:Airflow 或用户将任务设置为失败success
:Airflow 或用户将任务设置为成功retry
:Airflow 或用户重试了任务实例clear
:用户清除了任务的状态cli_task_run
:Airflow 触发了任务实例
除了这些预定义的事件之外,Airflow 还允许您定义可以在审计日志中跟踪的自定义事件。这可以通过调用 TaskInstance
对象的 log
方法来完成。