ARM访问Azure Cosmos DB中的Gremlin端点

时间:2018-08-19 14:47:59

标签: azure-resource-manager

是否可以使用ARM访问Cosmos数据库的Graph / Gremlin端点,以便例如将其设置为应用程序设置?

您可以使用以下语法来访问ARM中的Document / SQL端点:

[reference('Microsoft.DocumentDb/databaseAccounts/mydb').documentEndpoint]

但是在resources.azure.com中,我找不到Gremlin端点的等效项,这引起了问题,因为Azure中的Graph / Gremlin数据库现在至少有两种端点格式:

mydb.gremlin.cosmosdb.azure.com (older format)
mydb.graphs.azure.com (newer format)

我已经在整个环境中部署了具有混合名称格式的系统,并且当前必须通过传递名称的不同格式作为参数来解决该问题,但是这显然有些脆弱,需要我具有先验知识。 / p>

1 个答案:

答案 0 :(得分:0)

  

是否可以使用ARM访问Cosmos数据库的Graph / Gremlin端点

简短的回答是。请尝试使用以下代码reference(resourceId('Microsoft.DocumentDB/databaseAccounts', 'gremlinAccount')).gremlinEndpoint进行操作,然后我们就可以获取

"gremlinEndpoint": "https://xxxx.gremlin.cosmosdb.azure.com:443/",

以下是演示代码:

"variables": {
    "graphDbAccount": {
      "name": "gremlinAccount"
    },
    "resourceId": "[resourceId('Microsoft.DocumentDB/databaseAccounts', variables('graphDbAccount').name)]"
  }

"outputs": {
    "gremlinEndpoint": {
      "type": "string",
      "value": "[reference(variables('resourceId')).gremlinEndpoint]"
    }
  }

enter image description here