【问题标题】:Azure Cosmos DB Entity Insert and Data Explorer ErrorAzure Cosmos DB 实体插入和数据资源管理器错误
【发布时间】:2018-09-19 14:02:06
【问题描述】:

就在今天早上,当尝试查看 Azure Cosmos DB 表的数据资源管理器 UI 时,窗口完全空白,我看不到任何行(表不应为空)。与该表的唯一连接是一个 Python 脚本,该脚本仅使用几个变量推送简单的行,但是这在今天早上也停止了工作。

我仍然能够正确连接到表服务,甚至可以通过我的 Python 脚本创建一个新表。但是,只要我打电话给table_service.insert_or_replace_entity('traps', task)(“陷阱”是我的表的名称,任务是我要向上推的行),我就会收到HTTP Error 400. The request URL is invalid.

作为参考,我在 Python 中的连接如下,其中 Account_Name = 我的个人帐户名,Account_Key = 我的个人帐户密钥。

table_service = TableService(connection_string="DefaultEndpointsProtocol=https;AccountName=Account_Name;AccountKey=Account_Key;TableEndpoint=https://Account_Name.table.cosmosdb.azure.com:443/;")

for i in list(range(0,len(times))):
        print(len(tags))
        print(len(times))
        print(len(locations))
        task = {'PartitionKey': '1', 'RowKey': '{}'.format(tags[i]),'Date_Time' : '{}'.format(times[i]), 'Location' : '{}'.format(locations[i])}
        table_service.insert_or_replace_entity('traps', task)

更新

参考HTTP Error 400,我发现我试图在每个tags 字符串(即tags[0] = 'ab123\n')的末尾推送一个\n。删除 \n 已解决 HTTP 400 错误,但我现在在尝试上传时收到 The specified resource does not exist. 消息,这对于为什么我的数据资源管理器为空白更有意义。我曾尝试上传到新表,但结果相同。

第二次更新

关于未找到资源的愚蠢错误是我的表被称为“陷阱”而不是“陷阱”。数据现在似乎在 API 端正确上传。但是,该表仍未显示在 Azure 门户的数据资源管理器页面中。如果有人对此有见解,我们将不胜感激,因为在我们仍在开发中时,探索器非常有帮助。

第三次更新

我能够通过 Python 连接到表/数据库并有效地查询数据。这一切似乎都在那里并且是最新的。我唯一不确定的是为什么数据资源管理器没有正确显示。除此之外,我的建议显然是检查你的大写字母(我通常的错误哈哈),并且不要尝试在任务/有效负载中推高换行符(\n)。

【问题讨论】:

  • 我可以确认 Cosmos DB Data Explorer for Table API 没有正确/根本没有显示数据。我正在调查这个,
  • 另外,你能确认你为你的项目安装了哪个 Python 包吗?类似于:azure-storage-table
  • 您好,感谢您的回复。为了回答你的问题,我安装了整个 azure 包,即pip install azure

标签: azure-cosmosdb


【解决方案1】:

希望对您的问题提供官方更新和回复。此问题正在通过周一 (09/24/2018) 推出的 ETA 进行热修复。

【讨论】:

    猜你喜欢
    • 2020-05-31
    • 1970-01-01
    • 2020-08-03
    • 1970-01-01
    • 1970-01-01
    • 2020-05-27
    • 2020-04-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多