python 请求的终结点“https://< clustername>/v1/rest/mgmt”不存在

pcww981p  于 2023-03-11  发布在  Python
关注(0)|答案(1)|浏览(194)

我在Azure中创建了一个新群集,并使用python API,我想在其中创建一个数据库和表。但是,它给我一个错误,我的群集终结点不存在。错误:The requested endpoint 'https://<clustername>/v1/rest/mgmt' does not exist
我的代码:

client_id = <client-id>
client_secret = <client_secret>
AAD_TENANT_ID = <AAD_TENANT_ID>

query = .create table Raw_production_replicaatenant_785(TimeStamp:datetime,ID:int,StatusCode:dynamic,R1:real)

def Kusto_Execute(db,query):
    cluster = "https://<cluster-name>/" 
    kcsb = KustoConnectionStringBuilder.with_aad_application_key_authentication(cluster, client_id, client_secret, AAD_TENANT_ID)
    client = KustoClient(kcsb)

    response = client.execute(db, query)

有没有人能识别这个问题?为了清楚起见,我的API正在使用Active Directory身份验证方法与Azure集群进行身份验证,我也有这个应用程序在我的集群上的管理员权限。
更多信息:同样的代码也适用于我的另一个Azure集群。2错误发生在新集群上。3我需要为它注册一个新的AAD应用程序吗?
任何反馈都会很有帮助。谢谢

arknldoa

arknldoa1#

我在自己的环境中尝试,得到了以下结果:

最初,我在我的环境中得到了相同的错误:

错误:请求的终结点“不存在”。返回首页
当您在代码中传递错误的数据库名称时,就会发生上述错误。
在我用下面的代码尝试正确的数据库后,它成功地执行了。

代码:

from azure.kusto.data import KustoClient, KustoConnectionStringBuilder
from azure.kusto.data.helpers import dataframe_from_result_table

client_id = "Client_id"
client_secret ="Client_secret"
AAD_TENANT_ID = "Tenant_id"

def Kusto_Execute():
    cluster = "https://<your clustername>.location.kusto.windows.net" 
    query = ".create table Raw_production_replicaatenant_785(TimeStamp:datetime,ID:int,StatusCode:dynamic,R1:real)"
    db="<your database name>"
    kcsb = KustoConnectionStringBuilder.with_aad_application_key_authentication(cluster, client_id, client_secret, AAD_TENANT_ID)
    client = KustoClient(kcsb)
    response = client.execute(db,query)
    df = dataframe_from_result_table(response.primary_results[0])
    print(df)

Kusto_Execute()

输出:

参考:Query data using the Azure Data Explorer Python library | Microsoft Learn

相关问题