I’ve reported this before but never really got a solution, it is pretty uncommon but can be serious for a production mission critical system.
Basically from time to time the console will freeze - there are are often a few apps running for several days before this happens, we understand this is a known behaviour for the console app when left running for days on end - but it can happen that staff just leave it running sometimes.
When we discover this we kill the console process (it is unresponsive at the GUI level) using task manager and then restart it.
The restarted console then begins and indicates (in its status bar) that there are client connections, in our case TCP (0) and Pipes (1) - but we expect to see Pipes (2) because there are two clients logging.
However we see no messages displayed in the console - we expect to see some as the app’s by design reports periodic status/health info and so on.
Thus under these circumstances we lose the ability to see vital application status info (like errors or exceptions etc) that might occur from time to time and this impedes our ability to provide prompt status info to support personnel or customers.
If we stop/start the application (a stable reliable service app) then the first log msg issued by the restarted server does appear in the console and all seems fine thereafter.
At this stage the status now shows TCP (0) and Pipes (2) - because there were (all along) two client apps.
The two applications are:
- A custom TCP/IP server service - mature, stable etc.
- A SQL Server instance running SQL/CLR managed procedures.
Restarting 1. is doable but undesirable (as we impact users etc) and restarting 2. is also highly undesirable - yet we currently have no way to resume seeing log msgs.
Now Dennis did suggest trapping an OnError event within a client process but we have not taken this step as it is not trivial (for example logging any such event info to a file from SQL/CLR is rather involved and itself needs to be tested due to file access permissions etc etc).
So is there any list of likely causes for what we are seeing?
What typically might we expect to see passed to the OnError event?
What typically causes this event to get invoked when developing/testing SI itself?
Has anyone else here ever had to trap and report anything in this OnError event?
Might this be a true bug somewhere in SI and if so, does the above info shed some light in what this might be?
Any help greatly appreciated.