不从 Function App 向 Application Insights 发送数据
Not sending data to Application Insights from Function App
我有 Function App 和 Application Insight 服务。我注意到我的应用程序发送的数据量很大并且会产生很大的成本。我可以 disable/completely 在不删除 APPINSIGHTS_INSTRUMENTATIONKEY
或 APPLICATIONINSIGHTS_CONNECTION_STRING
的情况下停止向 AI 发送数据吗?但我当然想让这两项服务都保持活力。
host.json
应该以某种方式配置吗?
这是我为优化 Application Insights 日志生成的成本所做的解决方法:
- 为了尽量减少日志数量,您可以在
host.json
中使用更高的日志记录级别,如下面的屏幕截图所示:
可以看到这里的日志最小化功能信息日志没有产生,输出日志显示在浏览器中,只有手动日志显示在logs/terminal。
以及其他减少日志和优化 Azure Functions AI 成本的方法:
- 禁用不需要的模块: 编辑ApplicationInsights.config以关闭不需要的收集模块。
- 动态禁用遥测: 要在代码中的任何位置有条件地动态禁用遥测,请使用 TelemetryConfiguration
实例在其上设置 DisableTelemetry
标志。
此代码示例可防止将遥测数据发送到 Application Insights,但不能防止自动收集模块收集遥测数据,同时为了删除自动收集模块,请参阅此 Microsoft Documentation。
-。自定义日志收集:
{
"Logging": {
"LogLevel": {
"Default": "Warning"
},
"ApplicationInsights": {
"LogLevel": {
"Default": "Information"
}
}
}
}
以上配置允许 Application Insights 捕获所有 Information
日志和严重的 warning
日志。要更改此行为,请显式覆盖提供程序 ApplicationInsights
的日志记录配置,如下所示:
{
"Logging": {
"LogLevel": {
"Default": "Warning"
}
}
}
还有一些技术可以管理用于遥测数据优化的数据量,例如:
- 采样率:
- 每日上限:
- Pre-aggregate 指标
请查看这些参考以获取更多信息:
- Resolve if logs shows twice in Application Insights
- Optimizing logging costs of Azure Functions
- Configuring or removing the necessary Telemetry Initializers
此外,请访问我的实际解决方法(, )以减少不必要的日志并优化成本。
我有 Function App 和 Application Insight 服务。我注意到我的应用程序发送的数据量很大并且会产生很大的成本。我可以 disable/completely 在不删除 APPINSIGHTS_INSTRUMENTATIONKEY
或 APPLICATIONINSIGHTS_CONNECTION_STRING
的情况下停止向 AI 发送数据吗?但我当然想让这两项服务都保持活力。
host.json
应该以某种方式配置吗?
这是我为优化 Application Insights 日志生成的成本所做的解决方法:
- 为了尽量减少日志数量,您可以在
host.json
中使用更高的日志记录级别,如下面的屏幕截图所示:
可以看到这里的日志最小化功能信息日志没有产生,输出日志显示在浏览器中,只有手动日志显示在logs/terminal。
以及其他减少日志和优化 Azure Functions AI 成本的方法:
- 禁用不需要的模块: 编辑ApplicationInsights.config以关闭不需要的收集模块。
- 动态禁用遥测: 要在代码中的任何位置有条件地动态禁用遥测,请使用 TelemetryConfiguration
实例在其上设置 DisableTelemetry
标志。
此代码示例可防止将遥测数据发送到 Application Insights,但不能防止自动收集模块收集遥测数据,同时为了删除自动收集模块,请参阅此 Microsoft Documentation。
-。自定义日志收集:
{
"Logging": {
"LogLevel": {
"Default": "Warning"
},
"ApplicationInsights": {
"LogLevel": {
"Default": "Information"
}
}
}
}
以上配置允许 Application Insights 捕获所有 Information
日志和严重的 warning
日志。要更改此行为,请显式覆盖提供程序 ApplicationInsights
的日志记录配置,如下所示:
{
"Logging": {
"LogLevel": {
"Default": "Warning"
}
}
}
还有一些技术可以管理用于遥测数据优化的数据量,例如:
- 采样率:
- 每日上限:
- Pre-aggregate 指标
请查看这些参考以获取更多信息:
- Resolve if logs shows twice in Application Insights
- Optimizing logging costs of Azure Functions
- Configuring or removing the necessary Telemetry Initializers
此外,请访问我的实际解决方法(