2017-08-17 92 views
1

我正在嘗試調試存儲過程或使用javascript在Microsoft Azure CosmosDB'Script Explorer'中編寫的腳本。我放了幾個console.log()消息,以便可以跟蹤我的proc,並且找不到這些日誌消息寫入的位置。Microsoft Azure CosmostDB腳本資源管理器console.log

在腳本框架上,有一個文本框用於輸入輸入變量,在其下方有一個顯示響應的文本框。

我在哪裏可以找到使用console.log()登錄的日誌消息?

謝謝。

+0

也請看看[這裏](https://stackoverflow.com/questions/44610233/documentdb-stored-procs-what-does-the-enablescriptlogging-option-do)職位。 –

回答

1

我發現了一個getScriptLog方法來獲取控制檯。 Log()聲明在Azure Cosmos DB存儲過程official documentation中。

我在Azure的宇宙DB系列創建存儲procudure如下:

​​

我不知道你目前正在使用什麼語言SDK,請參閱Java SDK的示例代碼如下所述,也可以在其他SDK中實現。

//query exist stored procedure in collection 
StoredProcedure createdSproc =documentClient.readStoredProcedure("dbs/" + DATABASE_ID + "/colls/" + COLLECTION_ID +"/sprocs/"+"test", null).getResource(); 
//print query result 
System.out.println(createdSproc.toString()); 
try { 
    //set Request options 
    RequestOptions options=new RequestOptions(); 
    //enable script logging true 
    options.setScriptLoggingEnabled(true); 
    //execute stored procedure 
    StoredProcedureResponse spr = documentClient.executeStoredProcedure(createdSproc.getSelfLink(), options, 
      null); 
    System.out.println(spr.toString()); 
    System.out.println("status code: "+spr.getStatusCode()); 
    //print script log 
    System.out.println("Scrpit Log: "+ spr.getScriptLog()); 
    System.out.println("Response body: "+spr.getResponseAsString()); 
} catch (DocumentClientException e) { 
    e.printStackTrace(); 
} 

輸出:

enter image description here

請注意,此代碼是需要印刷的console.log

options.setScriptLoggingEnabled(真);

+0

你可以在forum.Thx上爲他人的參考標記這個答案。 –