2017-08-03 3 views
7

Je ne peux pas voir les journaux attachés aux tâches de l'interface utilisateur Airflow: enter image description hereAirflow: Le fichier journal est pas local, l'emplacement du journal distant non pris en charge

paramètres liés à journaux dans le fichier airflow.cfg sont:

  • remote_base_log_folder =
  • base_log_folder = /home/my_projects/ksaprice_project/airflow/logs
  • worker_log_server_port = 8793
  • child_process_log_directory = /home/my_projects/ksaprice_project/airflow/logs/scheduler

Bien que je configure remote_base_log_folter, il essaie de récupérer le journal à partir de http://:8793/log/tutorial/print_date/2017-08-02T00:00:00 - Je ne comprends pas ce comportement. Selon les paramètres, les travailleurs doivent stocker les journaux au /home/my_projects/ksaprice_project/airflow/logs et ils doivent être récupérés au même endroit et non à distance.

Mise à jour contenu de table task_instance: enter image description here

+0

quel mode utilisez-vous le flux d'air - Local, Céleri ? Essayez de vérifier l'URL suivante, car il ya une discussion élaborée sur le sujet, il https://github.com/puckel/docker-airflow/issues/44 –

+0

en utilisant CeleryExecutor – javed

+1

pouvez-vous vérifier dans le DB configuré - table - task_instance. Cette table a une colonne nommée 'nom d'hôte' à partir de laquelle l'URL du journal est créée et créée. Idéalement, cette valeur est la même que celle obtenue en exécutant la commande 'hostname' sur votre noeud de travail. –

Répondre

0

je suis tombé sur ceci aussi bien, et a dû annuler l'interruption des tâches.

dags_are_paused_at_creation = False 

J'ai aussi mis de nouveaux DAG par défaut à mon airflow.cfg désactive le

dags_are_paused_at_creation = False 
3

J'ai aussi fait face au même problème.

La définition des variables ci-dessous dans airflow.cfg a fonctionné pour moi. Utilisez {hostname} en tant que FQDN {hostname} au lieu de localhost.

endpoint_url = http://{hostname}:8080 

base_url = http://{hostname}:8080 

Bonne chance!

+0

le base_url est certainement important, beaucoup de pages dans l'interface utilisateur l'utilisent pour créer des liens dynamiquement. Le point de terminaison_url semble être utilisé uniquement par le cli, donc je doute que cela aide à résoudre ce problème. – Davos

+0

Voir https://github.com/apache/incubator-airflow/blob/master/airflow/models.py#L984 par exemple où le chemin du fichier journal est généré et la méthode suivante log_url qui utilise la valeur de configuration base_url. – Davos

0

Comme vous pouvez le voir dans l'image-1 il y a un horodatage, assurez-vous dans vos journaux que vous avez le dossier/fichier avec cet horodatage comme nom ..

Vous êtes à la recherche à l'interface utilisateur, assurez-vous donc d'abord vous avez les fichiers journaux créés dans le répertoire, dans mon cas mon dossier journal ressemble

(AIRFLOW-ENV) [[email protected] dags]$ ll /home/cloudera/workspace/python/airflow_home/logs/my_test_dag/my_sensor_task 
total 8 
-rw-rw-rw- 1 cloudera cloudera 3215 Nov 14 08:45 2017-11-12T12:00:00 
-rw-rw-rw- 1 cloudera cloudera 2694 Nov 14 08:45 2017-11-14T08:36:06.920727 
(AIRFLOW-ENV) [[email protected] dags]$ 

donc, mon URL journal est

http://localhost:8080/admin/airflow/log?task_id=my_sensor_task&dag_id=my_test_dag&execution_date=2017-11-14T08:36:06.920727 

Quand vous allez à votre DAG, et sélectionnez GRAPH-VIEW, tu c voir une liste déroulante à côté de "RUN", sélectionnez la course appropriée, puis dans la vue graphique ci-dessous, sélectionnez la tâche/opérateur approprié et sélectionnez view-log