如何找出调试在服务结构中显示许多异常的原因
How to find out why debug shows many exceptions in service fabric
我是 运行 我在本地开发集群上的服务结构中创建的应用程序。
在调试和查看输出时,它充满了
Exception thrown: 'System.InvalidOperationException' in Microsoft.ServiceFabric.Data.Impl.dll
Exception thrown: 'System.InvalidOperationException' in Microsoft.ServiceFabric.Data.Impl.dll
Exception thrown: 'System.InvalidOperationException' in Microsoft.ServiceFabric.Data.Impl.dll
Exception thrown: 'System.InvalidOperationException' in Microsoft.ServiceFabric.Data.Impl.dll
Exception thrown: 'System.InvalidOperationException' in Microsoft.ServiceFabric.Data.Impl.dll
Exception thrown: 'System.InvalidOperationException' in Microsoft.ServiceFabric.Data.Impl.dll
Exception thrown: 'System.InvalidOperationException' in Microsoft.ServiceFabric.Data.Impl.dll
Exception thrown: 'System.InvalidOperationException' in Microsoft.ServiceFabric.Data.Impl.dll
一切都是绿色的,我还没有发现任何不能按预期工作的东西。那么我究竟该怎么做才能找出 InvalidOperation 是什么:)?
已检查事件日志和诊断事件,未显示任何错误。
应该是在SFA里面抓到处理的,如果严重的话会重新扔掉,所以我不会太担心。
可能与本地开发环境和某些操作在非 azure / 本地安装环境中无效有关。
例如,本地开发环境可让您在单台计算机上模拟 5 节点集群。由此引起的任何异常都可能被捕获,如果检测到它是一个非真实世界的环境,则可以用不同的方式处理它。
我看到了完全相同的事情,但在生产中也是如此,我同意我认为这不是问题,尽管它会影响性能。
我将在上下文中添加更多内容,希望能帮助其他看到相同内容的人。
这是我的代码,它可以正常工作,我没有看到异常被抛出。
Log.Information("About to record activity for {Machine}", machineId);
using (var tx = StateManager.CreateTransaction())
{
await map.AddOrUpdateAsync(tx, machineId, _ => new SystemInfo { LastSeenUtc = timestampUtc }, (_, info) =>
{
info.LastSeenUtc = timestampUtc;
return info;
}).ConfigureAwait(false);
await tx.CommitAsync().ConfigureAwait(false);
Log.Information("Just committed transaction {Tx}", tx.TransactionId);
}
Log.Information("Recorded activity for {Machine}", machineId);
并带有调试输出 window。我正在使用 serilog
和 Serilog.Sinks.Debug
接收器来捕获输出。
[07:48:27 INF] About to record activity for d6441d45e1834db7860c00a8074652f9
[07:48:27 INF] Just committed transaction 131489813076754311
[07:48:27 INF] Recorded activity for d6441d45e1834db7860c00a8074652f9
Exception thrown: 'System.InvalidOperationException' in Microsoft.ServiceFabric.Data.Impl.dll
Transaction 131489813076754311 is committing or rolling back or has already committed or rolled back
我看到堆栈跟踪为
其他一切似乎都很好 - 但抛出异常对性能来说不是很好。
我是 运行 我在本地开发集群上的服务结构中创建的应用程序。
在调试和查看输出时,它充满了
Exception thrown: 'System.InvalidOperationException' in Microsoft.ServiceFabric.Data.Impl.dll
Exception thrown: 'System.InvalidOperationException' in Microsoft.ServiceFabric.Data.Impl.dll
Exception thrown: 'System.InvalidOperationException' in Microsoft.ServiceFabric.Data.Impl.dll
Exception thrown: 'System.InvalidOperationException' in Microsoft.ServiceFabric.Data.Impl.dll
Exception thrown: 'System.InvalidOperationException' in Microsoft.ServiceFabric.Data.Impl.dll
Exception thrown: 'System.InvalidOperationException' in Microsoft.ServiceFabric.Data.Impl.dll
Exception thrown: 'System.InvalidOperationException' in Microsoft.ServiceFabric.Data.Impl.dll
Exception thrown: 'System.InvalidOperationException' in Microsoft.ServiceFabric.Data.Impl.dll
一切都是绿色的,我还没有发现任何不能按预期工作的东西。那么我究竟该怎么做才能找出 InvalidOperation 是什么:)?
已检查事件日志和诊断事件,未显示任何错误。
应该是在SFA里面抓到处理的,如果严重的话会重新扔掉,所以我不会太担心。
可能与本地开发环境和某些操作在非 azure / 本地安装环境中无效有关。
例如,本地开发环境可让您在单台计算机上模拟 5 节点集群。由此引起的任何异常都可能被捕获,如果检测到它是一个非真实世界的环境,则可以用不同的方式处理它。
我看到了完全相同的事情,但在生产中也是如此,我同意我认为这不是问题,尽管它会影响性能。
我将在上下文中添加更多内容,希望能帮助其他看到相同内容的人。
这是我的代码,它可以正常工作,我没有看到异常被抛出。
Log.Information("About to record activity for {Machine}", machineId);
using (var tx = StateManager.CreateTransaction())
{
await map.AddOrUpdateAsync(tx, machineId, _ => new SystemInfo { LastSeenUtc = timestampUtc }, (_, info) =>
{
info.LastSeenUtc = timestampUtc;
return info;
}).ConfigureAwait(false);
await tx.CommitAsync().ConfigureAwait(false);
Log.Information("Just committed transaction {Tx}", tx.TransactionId);
}
Log.Information("Recorded activity for {Machine}", machineId);
并带有调试输出 window。我正在使用 serilog
和 Serilog.Sinks.Debug
接收器来捕获输出。
[07:48:27 INF] About to record activity for d6441d45e1834db7860c00a8074652f9
[07:48:27 INF] Just committed transaction 131489813076754311
[07:48:27 INF] Recorded activity for d6441d45e1834db7860c00a8074652f9
Exception thrown: 'System.InvalidOperationException' in Microsoft.ServiceFabric.Data.Impl.dll
Transaction 131489813076754311 is committing or rolling back or has already committed or rolled back
我看到堆栈跟踪为
其他一切似乎都很好 - 但抛出异常对性能来说不是很好。