首页 > 解决方案 > 气流(LocalExecutor) - Docker :: 作业失败,日志文件不存在

问题描述

气流版本:1.10.9

执行者:本地执行者

案卷设置

当作业有时运行时,我们会收到以下错误。我在网上搜索过,很多人在 celeryExecutor 中遇到过这个问题,但我们使用的是 LocalExecutor(Docker 设置)。我该如何解决这个问题?

*** Log file does not exist: /home/ubuntu/airflow/airflow/logs/es_update_relevance_score/es_update_relevance_score/2020-05-14T16:26:06.062416+00:00/1.log
*** Fetching from: http://:8793/log/es_update_relevance_score/es_update_relevance_score/2020-05-14T16:26:06.062416+00:00/1.log
*** Failed to fetch log file from worker. Invalid URL 'http://:8793/log/es_update_relevance_score/es_update_relevance_score/2020-05-14T16:26:06.062416+00:00/1.log': No host supplied

标签: airflow

解决方案


这是我在自己的容器中运行schedulerand并使用时看到的一种方法:webserverLocalExecutor

  1. 将主机日志目录作为卷挂载到容器schedulerwebserver容器中:
    volumes:
        - /location/on/host/airflow/logs:/opt/airflow/logs
  1. 确保气流容器中的用户(通常airflow)具有读取和写入该目录的权限。如果权限错误,您将看到类似于您帖子中的错误。

不过,这可能不会超出LocalExecutor使用范围。


推荐阅读