Microsoft Azure CosmostDB脚本资源管理器console.log

时间:2017-08-17 17:59:00

标签: javascript azure console azure-cosmosdb

我正在尝试使用javascript调试使用Microsoft Azure CosmosDB“Script Explorer”编写的存储过程或脚本。我放了几个console.log()消息,以便我可以跟踪我的proc,但我找不到这些日志消息的写入位置。

在脚本框架上,有一个输入变量的文本框,下面是一个显示响应的文本框。

我在哪里可以找到使用console.log()记录的日志消息?

感谢。

1 个答案:

答案 0 :(得分:1)

我找到了 getScriptLog 方法来获取控制台。 Azure Cosmos DB存储过程official documentation中的Log()语句。

我在Azure Cosmos DB Collection中创建了一个存储过程,如下所示:

enter image description here

我不知道您当前使用的是哪种语言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(真);