We are compiling a list of common functions and methods into a utilities assembly. Part of this utilities assembly is to provide a façade over the Enterprise Library Logging Block. The utility assembly abstraction provides an extension over the Logging Block in a number of ways:
- A custom database logging component to capture richer logging information in a RDBMS
- Integrate the use of CorrelationManager with a primary focus on Web application sessions and request correlations
- Integrated policy injection.
My question is; is it generally considered best practice to wrap 3rd party controls (like the Enterprise Library) up in a façade as described above?