現在我們的ASF集羣正在運行:Azure服務結構參與者 - 未處理的異常?
- 的Web API項目 - 無狀態的,面向公衆的
- 演員項目 - 主要是揮發,保持在內存中的數據,通過某些API
我們使用試用Application Insights,我可以設置未處理的錯誤跟蹤,如他們的文檔here對於我們的Web API項目。
問題是,我也想爲我們的Actor項目做這個。
是否有一個全球性的地方可以捕捉Actor中未處理的錯誤?我知道這是新的,也許這就是爲什麼我找不到這方面的文檔。
現在我每個演員方法中這樣做,但似乎並不像一個很好的解決方案:
public async Task DoStuff()
{
try
{
//Do all my stuff
}
catch (Exception exc)
{
//Send to Windows Event Source
ActorEventSource.Current.ActorMessage(this, "Unhandled error in {0}: {1}", nameof(DoStuff), exc);
//Send to Application Insights
new TelemetryClient().TrackException(exc);
throw exc;
}
}
我想'ActorServiceRemotingDispatcher'貌似對我來說是最好的選擇,我給它一個鏡頭。 – jonathanpeppers