Not a catalyst app, but mod_perl - my current project has a small "error" module that has a couple of methods : warn logs to the error file with the name of the calling code, but lets the request carry on fatal logs and terminates the request without killing the process.