我对 Azure 和 OTEL 还很陌生,目前正在探索将开放遥测与 Azure 中的 Application Insights 集成的选项。
我能够使用
AzureMonitorTraceExporter
推送痕迹,并且确实看到它们出现在 App Insights 中的 Performances
下。
但我很难将 OTEL 指标发送到 Insights。例如,我需要计算一个函数完成执行需要多长时间、需要多少内存等,并将这些指标发送到 Application Insights。将它们发送到 App Insights 后,我可以从哪个表中查询这些数据?
我尝试在网上搜索此内容,但没有找到。如有任何帮助,我们将不胜感激。
我需要计算一个函数完成执行需要多长时间,占用了多少内存
我已经使用了
pip install azure-monitor-opentelemetry
并且configure_azure_monitor
开始为我工作,然后它不起作用了。
通过使用
AzureMonitorTraceExporter
,您可以发送日志,但不计算持续时间,仅将日志导出到跟踪。
对于这些详细信息,您可以使用
configure_azure_monitor
创建依赖关系日志,如下所示,然后按照 Microsoft_Document:
from azure.monitor.opentelemetry import configure_azure_monitor
from opentelemetry import trace
configure_azure_monitor(connection_string="InstrumentationKey=b641cafc-00;IngestionEndpoint=https://eastus-8.in.applicationinsights.azure.com/;LiveEndpoint=https://eastus.livediagnostics.monitor.azure.com/;ApplicationId=2e73")
ri_tr = trace.get_tracer(__name__)
with ri_tr.start_as_current_span("Rithwik Bojja") as rith:
rith.set_attribute("Id", "007")
rith.set_attribute("Test ", "testing")
print("Hello Rithwik, Dependency Logged")
输出:
在这里您可以查看持续时间和所有内容: