Google Cloud Composer (Apache Airflow) не может получить доступ к файлам журнала - PullRequest
1 голос
/ 21 апреля 2020

Я использую DAG в Google Cloud Composer (размещенный в Airflow), который отлично работает в Airflow локально. Все, что он делает, это печатает «Hello World». Однако, когда я запускаю его через Cloud Composer, я получаю сообщение об ошибке:

*** Log file does not exist: /home/airflow/gcs/logs/matts_custom_dag/main_test/2020-04-20T23:46:53.652833+00:00/2.log
*** Fetching from: http://airflow-worker-d775d7cdd-tmzj9:8793/log/matts_custom_dag/main_test/2020-04-20T23:46:53.652833+00:00/2.log
*** Failed to fetch log file from worker. HTTPConnectionPool(host='airflow-worker-d775d7cdd-tmzj9', port=8793): Max retries exceeded with url: /log/matts_custom_dag/main_test/2020-04-20T23:46:53.652833+00:00/2.log (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f8825920160>: Failed to establish a new connection: [Errno -2] Name or service not known',))

Я также пытался заставить DAG добавить данные в базу данных, и это на самом деле успешно выполняется в 50% случаев. Однако, это всегда возвращает это сообщение об ошибке (и никакие другие операторы печати или журналы). Любая помощь высоко ценится, почему это может происходить.

1 Ответ

3 голосов
/ 22 апреля 2020

Мы также столкнулись с той же проблемой, затем подняли заявку в службу поддержки GCP и получили следующий ответ:

  1. Это сообщение связано с задержкой синхронизации журналов от работников Airflow к WebServer, это занимает не менее нескольких минут (в зависимости от количества объектов и их размера). Общий размер журнала невелик, но этого достаточно, чтобы заметно замедлить синхронизацию, поэтому мы рекомендуем очистить / заархивировать журналы

  2. В основном мы рекомендуем вместо этого полагаться на журналы Stackdriver из-за задержки из-за структуры этого syn c

Я надеюсь, что это поможет вам решить проблему.

...