2017-07-24 92 views
0

我的Azure函數存在問題。該函數無法啓動,因爲每次都會拋出FunctionInvocationException。當調用Azure函數時發生FunctionInvocationException

內部異常是與下面的消息一個InvalidOperationException:

PartitionKey必須進行此操作

供給我在我的功能兩個綁定連接到一個文檔DB,一個是一個綁定,用於從集合中檢索特定的文檔,另一個是用於審計的輸出綁定。

這些都在我的dev,qa和uat環境中工作正常,它只是生產環境有問題。這兩個集合(用於設置和審覈)都是在沒有分區鍵的情況下創建的,與每個環境相同。

System.InvalidOperationException: 在Microsoft.Azure.Documents.Client.DocumentClient + d__347.MoveNext(Microsoft.Azure.Documents.Client,版本= 1.11.0.0文化=中性公鑰= 31bf3856ad364e35)

有什麼想法?

我試過刪除並重新創建審計集合,但沒有奏效。我不明白爲什麼其他環境很好,但這不是。

編輯:

的function.json

{ 
    "scriptFile": "..\\bin\\Cso.Notification.Function.dll", 
    "entryPoint": "Cso.Notification.Function.Program.Run", 
    "disabled": false, 
    "bindings": [ 
    { 
     "type": "httpTrigger", 
     "direction": "in", 
     "webHookType": "genericJson", 
     "name": "request", 
     "methods": [ 
     "post" 
     ] 
    }, 
    { 
     "type": "documentDB", 
     "name": "subscriberSettings", 
     "databaseName": "CSO", 
     "collectionName": "Settings", 
     "id": "SubscriberSettings", 
     "connection": "CsoDocDb", 
     "direction": "in" 
    }, 
    { 
     "type": "http", 
     "direction": "out", 
     "name": "res" 
    }, 
    { 
     "type": "documentDB", 
     "name": "collector", 
     "databaseName": "CSO", 
     "collectionName": "AuditJSON", 
     "connection": "CsoDocDb", 
     "direction": "out" 
    } 
    ] 
} 
+0

請顯示您的代碼/綁定 – Mikhail

+0

你能分享你的應用程序的調用ID,時間戳和區域?會試着看看日誌,看看我能否找到具體的東西。 – Naren

+0

2個問題:1.您的所有環境是在Azure中運行,還是在開發機器上運行? 2.如果您嘗試直接使用「DocumentClient」對該集合執行類似操作,會發生什麼情況?它是否會給出相同的錯誤? – brettsam

回答

0

我已經找到了答案。我們查詢初始值(SubscriberSettings)的文檔之一是使用PartitionKey錯誤地設置的。

刪除集合並在沒有分區鍵的情況下重新創建集合也沒用。

相關問題