为什么我的 Azure Functions 配置中需要 APPINSIGHTS_INSTRUMENTATIONKEY 和 APPLICATIONINSIGHTS_CONNECTION_STRING?
Why do I need both APPINSIGHTS_INSTRUMENTATIONKEY and APPLICATIONINSIGHTS_CONNECTION_STRING in my Azure Function configuration?
APPINSIGHTS_INSTRUMENTATIONKEY
包含 Application Insights 的检测密钥。
APPLICATIONINSIGHTS_CONNECTION_STRING
包含前缀为 InstrumentationKey=
的 Application Insights 检测密钥。
这似乎毫无意义,除非每个值都启用 Application Insights 的某些功能。
查看 SDK Version 2.0.12998
的发行说明:
App Insights configuration will use the
APPLICATIONINSIGHTS_CONNECTION_STRING app setting if it is set
(APPINSIGHTS_INSTRUMENTATIONKEY is the fallback and continues to work
as-is).
此外,如果您阅读 App Insights Connection String
的文档,您会注意到当您使用连接字符串时,您可以指定自定义端点。如果您只指定检测密钥,这是不可能的。在这种情况下,SDK 将连接到默认端点。
需要注意的一件重要事情是,如果从 Azure 函数的配置中删除 APPINSIGHTS_INSTRUMENTATIONKEY,Azure 门户中 "Monitoring" 部分中的 "Logs" 条目将不再显示日志而是再次要求您连接到 Application Insights 资源。如果您这样做,门户将重新创建 APPINSIGHTS_INSTRUMENTATIONKEY 配置设置。
这似乎是 Azure 门户中的错误,因为确实会继续收集指标和日志。此外,有趣的是 "Log stream" 也继续工作。
APPINSIGHTS_INSTRUMENTATIONKEY
包含 Application Insights 的检测密钥。
APPLICATIONINSIGHTS_CONNECTION_STRING
包含前缀为 InstrumentationKey=
的 Application Insights 检测密钥。
这似乎毫无意义,除非每个值都启用 Application Insights 的某些功能。
查看 SDK Version 2.0.12998
的发行说明:
App Insights configuration will use the APPLICATIONINSIGHTS_CONNECTION_STRING app setting if it is set (APPINSIGHTS_INSTRUMENTATIONKEY is the fallback and continues to work as-is).
此外,如果您阅读 App Insights Connection String
的文档,您会注意到当您使用连接字符串时,您可以指定自定义端点。如果您只指定检测密钥,这是不可能的。在这种情况下,SDK 将连接到默认端点。
需要注意的一件重要事情是,如果从 Azure 函数的配置中删除 APPINSIGHTS_INSTRUMENTATIONKEY,Azure 门户中 "Monitoring" 部分中的 "Logs" 条目将不再显示日志而是再次要求您连接到 Application Insights 资源。如果您这样做,门户将重新创建 APPINSIGHTS_INSTRUMENTATIONKEY 配置设置。
这似乎是 Azure 门户中的错误,因为确实会继续收集指标和日志。此外,有趣的是 "Log stream" 也继续工作。