airflow.providers.google.cloud.log.stackdriver_task_handler¶
整合 Stackdriver 的處理器。
屬性¶
類¶
直接進行 Stackdriver 日誌 API 呼叫的處理器。 |
模組內容¶
- airflow.providers.google.cloud.log.stackdriver_task_handler.DEFAULT_LOGGER_NAME = 'airflow'[source]¶
- class airflow.providers.google.cloud.log.stackdriver_task_handler.StackdriverTaskHandler(gcp_key_path=None, scopes=_DEFAULT_SCOPESS, name=NOTSET, transport=BackgroundThreadTransport, resource=_GLOBAL_RESOURCE, labels=None, gcp_log_name=DEFAULT_LOGGER_NAME)[source]¶
繼承自:
logging.Handler直接進行 Stackdriver 日誌 API 呼叫的處理器。
這是 Python 標準
logging處理器,可用於將 Python 標準日誌訊息直接路由到 Stackdriver 日誌 API。它也可用於儲存執行任務的日誌。為此,應將其設定為名稱為“tasks”的處理器。在這種情況下,它也將用於讀取日誌以便在 Web UI 中顯示。
此處理器支援非同步和同步傳輸。
- 引數:
gcp_key_path (str | None) – Google Cloud 憑據 JSON 檔案的路徑。如果省略,將使用基於 Application Default Credentials 的授權。
scopes (collections.abc.Collection[str] | None) – 憑據的 OAuth 範圍,
name (str | airflow.utils.types.ArgNotSet) – Stackdriver 日誌中自定義日誌的名稱。預設為 'airflow'。Python 日誌記錄器的名稱將在
python_logger欄位中表示。transport (type[google.cloud.logging.handlers.transports.Transport]) – 用於建立新傳輸物件的類。它應繼承自基礎
google.cloud.logging.handlers.Transport型別並實現 :meth`google.cloud.logging.handlers.Transport.send`。預設為google.cloud.logging.handlers.BackgroundThreadTransport。另一個選項是google.cloud.logging.handlers.SyncTransport。resource (google.cloud.logging.Resource) – (可選)條目的受監控資源,預設為全域性資源型別。
- scopes: collections.abc.Collection[str] | None[source]¶
- emit(record)[source]¶
實際記錄指定的日誌記錄。
- 引數:
record (logging.LogRecord) – 要記錄的記錄。
- set_context(task_instance)[source]¶
配置日誌記錄器以新增有關當前任務的資訊。
- 引數:
task_instance (airflow.models.TaskInstance) – 當前執行的任務