At some point in every applications lifecycle, you find the need to capture errors. Often you want these errors available in different locations.
- Corporate clients may want to pull the errors out of event logs.
- Software pubilshers want the errors back at head office.
- Users just don't want to know, just let me keep the data.
Thats why ExceptionManager is such a nice pattern. Pull the code out of the Enterprise library/Application blocks and have a look. If you have time, rewrite it and really get to understand it.