在气流教程中,BashOperators的输出(通过echo)。如果任务在调度程序中运行,那么您在哪里查看输出?有控制台吗?我确定我只是在找对地方。
如果任务在 Airflow 中,以下是在 Web UI 中查找其日志的方法:
就像@ tobi6所说,您可以根据环境在Web服务器或控制台中查看DAG运行的输出。
为此,请在您的网络服务器中:
Graph View。View Log。如果要从运行中查看日志,请在airflow_home目录中查看。
用户可以在airflow.cfg中指定一个日志文件夹。默认情况下,它位于AIRFLOW_HOME目录中。
此外,用户可以提供一个远程位置,用于在云存储中存储日志和日志备份。目前,支持Amazon S3和Google Cloud Storage。要启用此功能,必须按照以下示例配置airflow.cfg:
Run Code Online (Sandbox Code Playgroud)[core] # Airflow can store logs remotely in AWS S3 or Google Cloud Storage. Users # must supply a remote location URL (starting with either 's3://...' or # 'gs://...') and an Airflow connection id that provides access to the storage # location. remote_base_log_folder = s3://my-bucket/path/to/logs remote_log_conn_id = MyS3Conn # Use server-side encryption for logs stored in S3 encrypt_s3_logs = False Remote logging uses an existing Airflow connection to read/write logs. If you don’t have a connection properly setup, this will fail.在上面的示例中,Airflow将尝试使用S3Hook('MyS3Conn')。
在Airflow Web UI中,本地日志优先于远程日志。如果找不到或访问本地日志,将显示远程日志。请注意,仅在任务完成(包括失败)后,日志才会发送到远程存储。换句话说,运行任务的远程日志不可用。日志以{dag_id} / {task_id} / {execution_date} / {try_number} .log的形式存储在日志文件夹中。
在Airflow 2中查看日志: