適用於:
Azure Data Factory
Azure Synapse Analytics
提示
在 Microsoft Fabric 中試用 Data Factory,這是適用於企業的全方位分析解決方案。 Microsoft Fabric 涵蓋從數據移動到數據科學、即時分析、商業智慧和報告等所有專案。 瞭解如何 免費啟動新的試用版 !
本文描述 Azure Data Factory 和 Azure Synapse 支援的系統變數。 定義這兩項服務內的實體時,可以在運算式中使用這些變數。
管線範圍
您可以在管線 JSON 中的任何位置參考這些系統變數。
| 變數名稱 | 描述 |
|---|---|
| @pipeline().DataFactory | 管線執行所在的資料或 Synapse 工作區名稱 |
| @pipeline().Pipeline | 管線名稱 |
| @pipeline().RunId | 特定管線執行識別碼 |
| @pipeline().TriggerType | 叫用管線的觸發程序類型 (例如,ScheduleTrigger、BlobEventsTrigger)。 如需支援的觸發程式類型清單,請參閱 管線執行和觸發程式。
Manual 觸發程序類型表示管線為手動觸發。 |
| @pipeline().TriggerId | 叫用管線的觸發程序的識別碼 |
| @pipeline().TriggerName | 叫用管線的觸發程序的名稱 |
| @pipeline().TriggerTime | 叫用管線的觸發程序執行的時間。 這是觸發程序實際引發以叫用管線執行的時間,且可能與觸發程序的排程時間稍有不同。 |
| @pipeline().GroupId | 管線執行所屬群組的識別碼。 |
| @pipeline()?.TriggeredByPipelineName (觸發管道名稱) | 觸發管線執行的管線名稱。 管線執行是由 ExecutePipeline 活動觸發時適用。 在其他情況下使用時,評估為 Null。 記下 @pipeline() 之後的問號 |
| @pipeline()?.TriggeredByPipelineRunId | 觸發管線執行的管線的執行識別碼。 管線執行是由 ExecutePipeline 活動觸發時適用。 在其他情況下使用時,評估為 Null。 記下 @pipeline() 之後的問號 |
注意
觸發程序相關的日期/時間系統變數 (在管線和觸發程序範圍中) 會以 ISO 8601 格式傳回 UTC 日期,例如,2017-06-01T22:20:00.4061448Z。
排程觸發程序範圍
針對 ScheduleTrigger 類型的觸發程式,可以在觸發程式 JSON 中的任何位置參考這些系統變數。
| 變數名稱 | 描述 |
|---|---|
| @trigger().scheduledTime | 排定觸發程序叫用管線執行的時間。 |
| @trigger().startTime | 觸發程序實際觸發,以叫用管線執行的時間。 這可能與觸發程序的排程時間稍有不同。 |
輪轉視窗觸發程序範圍
這些系統變數可以在 TumblingWindowTrigger 類型的觸發程式 JSON 的任何部分中參考。
| 變數名稱 | 描述 |
|---|---|
| @trigger().outputs.windowStartTime | 與觸發程序執行相關聯的時段開始。 |
| @trigger().outputs.windowEndTime | 與觸發程序執行相關聯的時段結束。 |
| @trigger().scheduledTime | 排定觸發程序叫用管線執行的時間。 |
| @trigger().startTime | 觸發程序實際觸發,以叫用管線執行的時間。 這可能與觸發程序的排程時間稍有不同。 |
儲存體事件觸發程序範圍
這些系統變數可以在 BlobEventsTrigger 類型的觸發程式 JSON 中的任何位置參考。
| 變數名稱 | 描述 |
|---|---|
| @triggerBody().fileName | 建立或刪除導致觸發程序觸發的檔案名稱。 |
| @triggerBody().folderPath | 包含 @triggerBody().fileName 所指定檔案的資料夾路徑。 資料夾路徑的第一個區段是 Azure Blob 儲存體容器的名稱。 |
| @trigger().startTime | 觸發程序實際觸發,以叫用管線執行的時間。 |
注意
如果您要在 Azure Synapse Analytics 中建立管線和觸發程式,則必須使用 @trigger().outputs.body.fileName 和 @trigger().outputs.body.folderPath 作為參數。 這兩個屬性會擷取 Blob 資訊。 使用這些屬性,而不是使用 @triggerBody().fileName 和 @triggerBody().folderPath。
自訂事件觸發程序範圍
針對 CustomEventsTrigger 類型的觸發程式,可以在觸發程式 JSON 中的任何位置參考這些系統變數。
注意
服務預期使用 Azure 事件方格事件架構來格式化自定義事件。
| 變數名稱 | 描述 |
|---|---|
| @triggerBody().event.eventType | 觸發自訂事件觸發程序執行的事件類型。 事件類型是客戶定義的欄位,並接受字串類型的任何值。 |
| @triggerBody().event.subject | 導致觸發程序觸發的自訂事件的主旨。 |
| @triggerBody().event.data._keyName_ | 自訂事件中的資料欄位是免費的 JSON Blob,客戶可用來傳送訊息和資料。 請使用數據。keyName 以參考每個欄位。 例如,@triggerBody().event.data.callback傳回儲存在數據下之回呼欄位的值。 |
| @trigger().startTime | 觸發程序實際觸發,以叫用管線執行的時間。 |
注意
如果您要在 Azure Synapse Analytics 中建立管線和觸發程式,則必須使用 @trigger().outputs.body.event 作為參數。 此屬性會擷取事件資訊。 使用這個屬性,而不是使用 @triggerBody().event。
相關內容
- 如需如何在表達式中使用這些變數的資訊,請參閱 表達式語言和函式。
- 若要在管線中使用觸發程式範圍系統變數,請參閱 管線中的參考觸發程式元數據