无法从 Opentelemetry 库中找到参考 `configure_azure_monitor`

问题描述 投票:0回答:1

我目前正在探索将 OpenTelemetry 与 Azure Application Insights 结合使用来进行日志记录、跟踪和指标。

正在关注 Google 上弹出的这个特定的文档

在此处发布片段,以防链接过期:

# Import the `configure_azure_monitor()` function from the
# `azure.monitor.opentelemetry` package.
from azure.monitor.opentelemetry import configure_azure_monitor

# Import the tracing api from the `opentelemetry` package.
from opentelemetry import trace

# Configure OpenTelemetry to use Azure Monitor with the 
# APPLICATIONINSIGHTS_CONNECTION_STRING environment variable.
configure_azure_monitor()

因此,当我在 Python 应用程序中尝试此操作时,我收到了

Cannot find Reference
configure_azure_monitor
错误。我还安装了 1.6.0 版本的
azure-monitor-opentelemetry
软件包

我哪里错了?如有任何帮助,我们将不胜感激。

python-3.x azure azure-application-insights open-telemetry
1个回答
0
投票

将 opentelemetry 与 azure 应用程序见解集成,以便我可以喜欢来自应用程序的推送指标

最新版本的 Open Telemetry 不支持

configure_azure_monitor()

您可以使用

azure.monitor.opentelemetry.exporter
使用 Python 中的开放遥测包将日志发送到 Application Insights。

我已关注Microsoft-Document并且能够发送日志。

import logging 
from opentelemetry.sdk._logs.export import BatchLogRecordProcessor as blrp
from azure.monitor.opentelemetry.exporter import AzureMonitorLogExporter as amlp
from opentelemetry._logs import (get_logger_provider as glp,set_logger_provider as slp,)
from opentelemetry.sdk._logs import (LoggerProvider,LoggingHandler,)

slp(LoggerProvider())
ri_ex = amlp(
    connection_string="InstrumentationKey=b6*****00;IngestionEndpoint=https://eastus-8.in.applicationinsights.azure.com/;LiveEndpoint=https://eastus.livediagnostics.monitor.azure.com/;ApplicationId=2e74****ddf63"
)
glp().add_log_record_processor(blrp(ri_ex))

ri_han = LoggingHandler()
ri_lger = logging.getLogger(__name__)
ri_lger.addHandler(ri_han )
ri_lger.setLevel(logging.INFO)

ri_lger.warning("Warning Rithwik WARNING ")
ri_lger.error("Error Rithwik")

输出:

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.