【问题标题】:Microsoft Azure CosmostDB Script Explorer console.logMicrosoft Azure CosmostDB 脚本资源管理器 console.log
【发布时间】:2017-08-17 17:59:00
【问题描述】:

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

在脚本框架上,有一个文本框用于输入您的输入变量,在该文本框下方有一个显示响应的文本框。

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

谢谢。

【问题讨论】:

  • 另外请看this的帖子。

标签: javascript azure console azure-cosmosdb


【解决方案1】:

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

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

不知道您目前使用的是什么语言的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();
}

输出:

请注意,此代码是打印 console.log 所必需的

options.setScriptLoggingEnabled(true);

【讨论】:

  • 您可以在论坛上标记此答案以供其他人参考。谢谢。
猜你喜欢
  • 2016-04-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-07
  • 2016-02-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多