【发布时间】:2016-06-15 09:36:16
【问题描述】:
我正在编写一个 Azure webJob,它在部署之前最终是一个控制台应用程序。我正在尝试向其中添加 Application Insights,以便获得遥测结果。但是,由于这不是任何类型的 Web 应用程序,因此遥测不是项目的公认部分。
当我尝试手动添加遥测并设置 TelemetryConfiguration.Active 框架的任何详细信息时,我会看到以下错误:
TelemetryConfiguration.Active.InstrumentationKey = settingsKey;
Exception:
'Microsoft.WindowsAzure.Storage.StorageException' in Microsoft.WindowsAzure.Storage.dll
Additional information: The remote server returned an error: (404) Not Found.
但是,如果我在解决方案中运行 ODATA mvc 应用程序,所有遥测“开箱即用”都可以正常工作。
任何关于如何通过 SDK 设置 Insights 的指导都会非常有用,因为我正在努力寻找非网络应用示例的良好文档。
其自身的主机代码基于网络作业的标准示例:
JobHost host = new JobHost();
host.Start();
var task = host.CallAsync(typeof(Functions).GetMethod("MessageHandlingLoop"));
task.Wait();
host.Stop();
然后在 MessageHandlingLoop() 中的遥测代码
提前致谢!
【问题讨论】:
-
请分享堆栈跟踪,这将有助于识别问题。
-
堆栈跟踪是:在 Microsoft.WindowsAzure.Storage.Core.Executor.Executor.EndExecuteAsync[T](IAsyncResult 结果) 在 c:\Program Files (x86)\~\workspace\release_dotnet_master\Lib \ClassLibraryCommon\Core\Executor\Executor.cs:第 57 行
标签: c# azure azure-application-insights telemetry