Airflow Summit 2025 即将于 10 月 07-09 日举行。立即注册,获取早鸟票!

Airflow 中的审计日志

概览

审计日志是任何需要保持高水平安全性和合规性的系统的关键组件。它们提供了一种跟踪用户行为和系统事件的方式,可用于故障排除、检测安全漏洞和确保法规遵从。

在 Airflow 中,审计日志用于跟踪 DAG 和任务执行期间发生的用户行为和系统事件。它们存储在数据库中,可通过 Airflow UI 访问。

要查看审计日志,用户需要拥有 Audit Logs.can_read 权限。拥有此权限的用户将能够查看所有审计日志,无论适用的 DAG 权限如何。

审计日志级别

审计日志存在于任务级别和用户级别。

  • 任务级别:在任务级别,审计日志捕获与任务执行相关的信息,例如任务的开始时间、结束时间和状态。

  • 用户级别:在用户级别,审计日志捕获与用户行为相关的信息,例如创建、修改或删除 DAG 或任务。

审计日志位置

审计日志可通过 Airflow UI 访问。它们位于“浏览”选项卡下,可以通过从下拉菜单中选择“审计日志”来查看。

事件类型

Airflow 提供了一组预定义事件,可以在审计日志中进行跟踪。这些事件包括但不限于:

  • trigger:触发一个 DAG

  • [variable,connection].create:用户创建了一个连接 (Connection) 或变量 (Variable)

  • [variable,connection].edit:用户修改了一个连接 (Connection) 或变量 (Variable)

  • [variable,connection].delete:用户删除了一个连接 (Connection) 或变量 (Variable)

  • delete:用户删除了一个 DAG 或任务

  • failed:Airflow 或用户将任务设置为失败

  • success:Airflow 或用户将任务设置为成功

  • retry:Airflow 或用户重试了任务实例

  • clear:用户清除了任务的状态

  • cli_task_run:Airflow 触发了一个任务实例

除了这些预定义事件之外,Airflow 还允许您定义可在审计日志中跟踪的自定义事件。这可以通过调用 TaskInstance 对象的 log 方法来完成。

此条目有帮助吗?