是否可以使用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>
答案 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]"
}
}