无法从azure.monitor.query导入ApplicationInsightsDataClient的解决方法咨询
解决Azure SDK导入ApplicationInsightsDataClient报错问题
报错原因
ApplicationInsightsDataClient不属于azure.monitor.query模块,该类是旧版Application Insights专属SDK的成员,而azure.monitor.query是Azure Monitor统一查询SDK,两者分属不同包。
两种解决办法
方法1:使用正确的包导入原类
若需继续使用ApplicationInsightsDataClient,先安装对应依赖包:
pip install azure-applicationinsights
再修改导入语句为正确路径:
from azure.applicationinsights import ApplicationInsightsDataClient
方法2:迁移到新版Azure Monitor查询SDK
如果要使用azure.monitor.query,可以用LogsQueryClient替代(它支持查询Application Insights的日志数据),先安装所需包:
pip install azure-monitor-query azure-identity
示例使用代码:
from azure.monitor.query import LogsQueryClient from azure.identity import DefaultAzureCredential # 初始化客户端 client = LogsQueryClient(DefaultAzureCredential()) # 执行日志查询(替换为你的资源ID和查询语句) response = client.query_resource( resource_id="/subscriptions/{sub}/resourceGroups/{rg}/providers/microsoft.insights/components/{app-insights-name}", query="requests | take 10", timespan="PT1H" )
内容的提问来源于stack exchange,提问作者coolCode7
相关产品推荐
相关产品推荐

