在Airflow中,可以使用系统变量AIRFLOW_VAR_LOGGING_LEVEL
来控制变量修改的审计级别。默认情况下,Airflow不会记录变量修改的详细信息。要启用变量修改的审计,可以按照以下步骤进行配置:
airflow.cfg
。[core]
部分,并确保以下配置项存在:# Enable variable logging
enable_var_logging = True
配置完成后,Airflow将记录所有对变量的修改操作,包括变量的新旧值和修改时间。你可以在Airflow的Web界面的Admin
菜单下的Variables
页面查看变量的修改历史。
以下是一个示例代码,演示如何使用Airflow的变量修改审计功能:
from airflow import DAG
from airflow.operators.python_operator import PythonOperator
from airflow.models import Variable
from datetime import datetime
def modify_variable():
# 修改变量
Variable.set("my_variable", "new_value")
dag = DAG(
dag_id='variable_audit_example',
start_date=datetime(2022, 1, 1),
schedule_interval=None
)
task = PythonOperator(
task_id='modify_variable_task',
python_callable=modify_variable,
dag=dag
)
在上述示例中,modify_variable
函数将修改名为my_variable
的变量的值。当Airflow执行该任务时,变量修改的详细信息将被记录下来,并可以在Web界面中查看。
请注意,变量修改的审计功能仅适用于Airflow 1.10.6及更高版本。在较早的版本中,不支持此功能。