Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Extend task context logging support for remote logging using WASB (Azure Blob Storage) #32972

Merged
merged 6 commits into from
Nov 17, 2023
9 changes: 6 additions & 3 deletions airflow/providers/microsoft/azure/log/wasb_task_handler.py
Original file line number Diff line number Diff line change
Expand Up @@ -95,8 +95,11 @@ def hook(self):
)
return None

def set_context(self, ti: TaskInstance, **kwargs) -> None:
super().set_context(ti)
def set_context(self, ti: TaskInstance, *, identifier: str | None = None) -> None:
if getattr(self, "supports_task_context_logging", False):
super().set_context(ti, identifier=identifier)
else:
super().set_context(ti)
# Local location and remote location is needed to open and
# upload local log file to Wasb remote storage.
if TYPE_CHECKING:
Expand All @@ -105,7 +108,7 @@ def set_context(self, ti: TaskInstance, **kwargs) -> None:
full_path = self.handler.baseFilename
self.log_relative_path = Path(full_path).relative_to(self.local_base).as_posix()
is_trigger_log_context = getattr(ti, "is_trigger_log_context", False)
self.upload_on_close = is_trigger_log_context or not ti.raw
self.upload_on_close = is_trigger_log_context or not getattr(ti, "raw", None)

def close(self) -> None:
"""Close and upload local log file to remote storage Wasb."""
Expand Down