2016-09-20 61 views
6

我有Azure函數設置運行blob觸發器(所以當blob添加到容器時,它應該觸發)。直到我打開門戶中的功能應用程序,函數才運行。那麼它會拾取添加的任何斑點並像正常一樣處理它們。爲什麼我需要在門戶中打開功能應用程序才能讓我的工作開始?這幾乎像功能應用程序進入睡眠,然後當我瀏覽它時醒來。我如何防止這種情況發生?Azure函數Blob觸發器不會觸發,除非我打開函數應用程序

這裏是我的科雷

{ 
    "bindings": [ 
{ 
    "name": "myBlob", 
    "type": "blobTrigger", 
    "direction": "in", 
    "path": "automated-sql-export", 
    "connection": "Conn" 
} 
], 
"disabled": false 
} 
+0

可能的重複http://stackoverflow.com/questions/39430932/how-do-i-turn-on-always-on-for-an-azure-function/39431332 –

回答

4

當一個函數應用運行的主機在我們所有的各種觸發類型(隊列,事件樞紐,斑點等需要照顧的新事件自動接收/輪詢)。然而,一些出現分歧基於你在運行層。

在我們動態SKU S,我們有外部功能應用服務,負責監測工作,確保其功能應用程序正在運行時,它需要是。當沒有工作要執行時(例如,沒有隊列消息,沒有新的斑點等),功能應用程序進入休眠狀態。外部服務的責任是確保工作到達時被喚醒。

我的經典SKU s(基本/標準)此外部顯示器不在圖片中。功能應用程序必須運行在始終打開模式,以保持它活着。在傳統層中創建功能應用程序時,應將此設置自動配置爲開啓。

解釋了所有背景後,如果您運行的是動態SKU,事情應該「正常」。如果他們不是,請記錄一個錯誤here。如果您運行的是經典SKU,請確保啓用了始終開啓。這是人們遇到的常見問題。

+1

我正在使用動態計劃,但解釋很好,知道它應該如何工作。我去了你提供的鏈接,看到已經有一個爲這個問題創建的錯誤。所以我會遵循該線程。謝謝! – Bullsfan127

+1

https://github.com/Azure/azure-webjobs-sdk-script/issues/691 – Bullsfan127

+0

我剛碰到這個,好吧,那很奇怪。我想我們必須等待修復。 – 4c74356b41