2017-06-14 47 views
0

我使用的是定時器觸發Azure的功能將數據從一個數據庫移動每隔X分鐘的最後2周運行時間。爲此,我想訪問最後兩個運行時間,並使用它來限制我的數據庫查詢,以便將SecondLastRunTime中的所有日誌都記錄到LastRunTime中。假設我每隔X分鐘運行計時器,這應該會給我所有的日誌。獲取Azure的功能

我怎樣才能訪問這些信息?此外,處理定時器失敗的任何建議?

回答

0

這些細節都不能自動獲得來自TimerTrigger。

但是,你應該能夠使用輸出結合寫這些細節表儲存或DocDb或(任何其他存儲類型)每當函數運行。然後,您可以使用輸入綁定在觸發器觸發時自動加載數據。

下面就以表輸入/輸出綁定可能有用的鏈接:https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage-table

一種方法來TimerTrigger故障是有觸發功能做很少的工作,轉而寫一些上下文隊列消息(也許是什麼時候發射的時間戳?)。然後,一個單獨的QueueTrigger函數可以作用於該消息。關於這一點的好處是,QueueTrigger執行自動重試(默認最多5次),並將任何失敗的內容存儲在「毒藥」隊列中供您稍後評估。它還有助於編寫函數的方式(一)他們是冪等的:如果你連續多次運行它,你會得到相同的結果和(b)功能可以處理情況,以前的運行失敗的情景:這可能意味着清理失敗的處理或者忽略它,以便稍後手動清理它。