1

在有关如何使用将跟踪提交到 Azure Application Insights的文档opencensus-python中,详细说明了如何向该customDimensions字段添加其他信息。那是,

import logging

from opencensus.ext.azure.log_exporter import AzureLogHandler

logger = logging.getLogger(__name__)
logger.addHandler(AzureLogHandler(
    connection_string='InstrumentationKey=00000000-0000-0000-0000-000000000000')
)

logger.error('blooh')
logger.error('blooh2', extra={'custom_dimensions': {'woot': 42}})

变成

在此处输入图像描述

在 Application Insights UI 中。

这一切都很好,但是customDimensions默认情况下从中删除项目的预期方法是什么?即像fileNameprocess

4

1 回答 1

2

通过检查源代码,这些属性似乎很难避免创建,但可以通过后处理来删除它们envelope

import logging

from opencensus.ext.azure.log_exporter import AzureLogHandler

custom_dimensions = {'foo': 'bar'}

def remove_items(envelope):
    envelope.data.baseData.properties = custom_dimensions
    return True

logger = logging.getLogger(__name__)
handler = AzureLogHandler(connection_string='InstrumentationKey=00000000-0000-0000-0000-000000000000')
handler.add_telemetry_processor(remove_items)
logger.addHandler(handler)
logger.error('blooh')

这是经过测试并在opencensus-ext-azure版本 1.0.5 中工作。

在此处输入图像描述

另请注意,使用此方法,不再需要指定extra何时记录。

于 2020-10-28T16:17:56.080 回答