Update April 5th: @razvan hijacked this issue to add more clarifications to how logging works in Airflow in various circumstances. The documentation regarding logging is quite bare.
While investigating a CVE a couple of questions popped out that need clarification.
How/Where are logs written by the different roles/groups ?
How is the /stackable/airflow/log folder handled by the different roles (scheduler, executor, webserver) ? Why does it even contain files if we configure Airflow to write everything to /stackable/logs ?
How do the permissions of /stackable/logs come to be ? This folder is created multiple places:
the Pod command
log_config.py
...
Following is the original request of this issue
DAG logs are ephemeral. When using the Kubernetes executor, they are only available on the executor pods and are lost when the pods are destroyed. This can be mitigated by the vector log collection infrastructure to save the logs to a remote system. The problem remains that the logs are not accessible via Airflow's web UI.
In addition, during tests it was found that the logs are not accessible in the Airflow web ui even while the executor pods are still alive. This is the bug aspect of this ticket that requires some more investigation.
Update April 5th: @razvan hijacked this issue to add more clarifications to how logging works in Airflow in various circumstances. The documentation regarding logging is quite bare.
While investigating a CVE a couple of questions popped out that need clarification.
/stackable/airflow/log
folder handled by the different roles (scheduler, executor, webserver) ? Why does it even contain files if we configure Airflow to write everything to/stackable/logs
?/stackable/logs
come to be ? This folder is created multiple places:Following is the original request of this issue DAG logs are ephemeral. When using the Kubernetes executor, they are only available on the executor pods and are lost when the pods are destroyed. This can be mitigated by the vector log collection infrastructure to save the logs to a remote system. The problem remains that the logs are not accessible via Airflow's web UI.
In addition, during tests it was found that the logs are not accessible in the Airflow web ui even while the executor pods are still alive. This is the bug aspect of this ticket that requires some more investigation.