In your typical MVC application, you have many layers.
Database layer
Model layer (possibly in the same package as the DB)
View/UI Layer
Controller Layer
Business Layer
Where should the exception handling or error logging live here, if you were to create custom exceptions, interfaces and models for error logging in a sufficiently complex MVC application?
You should handle exceptions in your data layer that come from your data layer (SQLExceptions, for example), in your controller for controller/logic exceptions, and in your view for display related exceptions. Use a logging solution like ELMAH to log exceptions and catch unhandled exceptions.