Goal
I'm searching for tools / frameworks which allow my C# to be monitored against failures and especially crashes.
Background information
I've a C# application using the Chromium Embedded Framework for hosting a web application with access to OS functions. Thus the application is a mix of C# and native C/C++ code. Furthermore the application requires running several processes simultaneously to proper operation.
In case of problems in some of the processes the applcation easily becomes disfunctional. This can be due to - memory faults in C/C++ - out of memory situations - programming errors - etc.
To a) know about problems occuring in the wild and to b) being able to fix problems I'd like to have some kind of crash reporter, which
- ideally includes not only silent reports, but also has some feedback system where the user can leave comments
- collects as much information on the crash as possible (i.e. exceptions, callstack of every process, optionally a memory dump)
- since the most serious problems lead to crashing processes, the crash guard/reporter should not be hosted within the process, but be an external programm monitoring the software
- I'm willing to try tools which are not separate processes, if they perform some magic to circumvent being killed together with the whole process
Investigations so far
- So far, I've looked at sentry.io, but unfortunately Sentry-enabled apps simply quit on memory faults without any reporting or crash detection.
- I've checked for alternatives to sentry.io, but there's a huge number of frameworks I'm not able to evaluate all.
I've checked on StackOverflow for similar threads, found
https://mcmap.net/q/1925396/-crash-reporting-watchdog-for-when-my-application-locks-up-on-a-customer-39-s-machine https://mcmap.net/q/1918988/-how-can-i-monitor-an-application-crash-from-a-separate-process https://mcmap.net/q/1251720/-best-way-to-detect-an-application-crash-and-restart-it?noredirect=1&lq=1
But these don't seem to help me out.
I'd be very happy if someone had experience with this kind of problem and pointed out tools/frameworks for it.
Best regards, cd_