看似简单的问题,但没有找到最佳方法的运气。
因此,我需要从控制台应用程序记录应用程序事件,该应用程序事件将在容器内旋转并执行一些工作然后消失。
如何从内部记录自定义数据?
我已经尝试使用Azure Monitor并创建了一个工作区,并在应用程序内部使用了HTTP Data Collector API,但是在确定存储日志的位置时并不高兴。
是否有一种简单的方法可以登录到Azure存储帐户,然后使用Azure Monitor管理事件?
我已经搜索了几个小时,但是很多帖子都已经有8年历史了,并且没有相关性,而且在现代的天蓝色环境中我找不到真正的简单用例。
也许如此简单,我看不到
任何指针或链接都收到了!
谢谢 保罗
答案 0 :(得分:2)
为什么不使用Application Insight自定义事件来跟踪事件?
https://docs.microsoft.com/en-us/azure/azure-monitor/app/api-custom-events-metrics
有了它,您可以跟踪具有任何元数据的事件,并在Azure Application Insights Blade中对其进行检查,或者通过Application Insights SDK或The Api进行访问。
您只需要创建一个Application Insight实例并使用遥测密钥即可。
SDK:https://github.com/Microsoft/ApplicationInsights-dotnet
API:https://dev.applicationinsights.io/reference
编写事件的代码示例:
TelemetryClient client = new TelemetryClient();
client .InstrumentationKey = "INSERT YOUR KEY";
client.TrackEvent("SomethingInterestingHappened");
此外,您不仅可以发送字符串值,还可以发送其他信息:
tc.TrackEvent("PurchaseOrderSubmitted",
new Dictionary<string, string>()
{
{"CouponCode", "JULY2015" }
}, new Dictionary<string, double>()
{
{"OrderTotal", 68.99 },
{"ItemsOrdered", 5}
});