Are there any technical details available concerning how notifications determine whether they should be fired?
The on started/completed/error checkboxes make sense intuitively, but how does a job or task know that there was an error?
Most of my tasks are "execute" tasks which run windowless applications (typically to poll a database server and do something with the data). There is usually a lot of error handling built into these apps, and they run with the .NET runtime. Exceptions are usually handled and logged in a file.
Now I realize that if I handle an exception (and log it to a file), the exception is not propagating up the .NET runtime so there's no way for VC to realize that there was an error.
So I suppose what I'm asking is, what triggers the "on error" status for a task? A .net exception? A nonzero exit code? Any other technical or OS details I should know? Ultimately we'd like to be able to change our apps that are controlled by VC so that VC can actually respond if there is an error.
Right now I suppose the only time the on error would be triggered would be if the app crashed halfway through a run or if there was a bizarre unhandled exception.