azure-functions - Azure Function + Application Insights - 不跟踪 SQL 查询
问题描述
我们有一个 Http 触发的 Azure 函数 (.NET Core 3.1)。无论出于何种原因,我们无法让详细的 SQL 依赖跟踪正常工作,我们所看到的只是:tcp:ourdbserver.database.windows.net,1433 | TestDB
.
它在本地调试和部署到 Azure 时都不起作用。我们已经安装了最新的 ApplicationInsights nuget 包(见下文):
在 StartUp 中,我们按照 Microsoft docs here的建议选择加入 SQL Text 集合:
任何人都可以阐明我们缺少什么吗?
更新:
这就是我们在host.json
:
{
"version": "2.0",
"logging": {
"applicationInsights": {
"samplingExcludedTypes": "Request",
"samplingSettings": {
"isEnabled": true
}
}
}
}
以下是在本地调试时输出到调试控制台的内容:
ApplicationInsightsLoggerOptions
{
"SamplingSettings": {
"EvaluationInterval": "00:00:15",
"InitialSamplingPercentage": 100.0,
"MaxSamplingPercentage": 100.0,
"MaxTelemetryItemsPerSecond": 20.0,
"MinSamplingPercentage": 0.1,
"MovingAverageRatio": 0.25,
"SamplingPercentageDecreaseTimeout": "00:02:00",
"SamplingPercentageIncreaseTimeout": "00:15:00"
},
"SamplingExcludedTypes": null,
"SamplingIncludedTypes": null,
"SnapshotConfiguration": null,
"EnablePerformanceCountersCollection": true,
"HttpAutoCollectionOptions": {
"EnableHttpTriggerExtendedInfoCollection": true,
"EnableW3CDistributedTracing": true,
"EnableResponseHeaderInjection": true
},
"LiveMetricsInitializationDelay": "00:00:15",
"EnableLiveMetrics": true,
"EnableDependencyTracking": true
}
解决方案
如下更新 host.json 中的日志记录部分以允许Information
级别日志(注意我在上面发布的现有配置中添加了 logLevel)。默认情况下,如果您未指定,则为警告。正如此处的注释中所述,依赖项使用信息级别记录。另请注意,根据文档,excludedTypes(不是 samplingExcludedTypes)应该在 samplingSettings 内。
{
"version": "2.0",
"logging": {
"applicationInsights": {
"samplingSettings": {
"isEnabled": true,
"excludedTypes": "Dependency;Request"
}
},
"logLevel": {"default": "Information"}
}
}
推荐阅读
- java - 转发 ResponseEntity 时 Spring REST 服务挂起
- javascript - 在文件上传中获取真实路径而不是“假路径”
- ruby-on-rails - Jbuilder 到 Rabl
- java - ActiveMq : 消费者已经自动增加
- javascript - 通过 JavaScript 类调用 javaScript 函数
- python-2.7 - 如何从大型 csv 文件生成 unigram、bigram 和 trigram 并使用 nltk 或纯 python 计算它们的频率
- python - 创建具有所有可能排序的最大长度 K 的 N 个列表
- python-3.x - pandas 数据框导入了 CSV,所有行都在一列中。我该如何解决?
- php-5.6 - 使用 yii2 php5 apache 时在 helpers/BaseArrayHelper.php 中为 foreach() 错误提供的参数无效
- angular - 从@types/chartjs 切换到@types/chart.js