Entry point to UIM"s exception handling. Using the `register()` method you can attach an ExceptionTrap to D"s default exception handler and register a shutdown handler to handle fatal errors. When exceptions are trapped the `Exception.beforeRender` event is triggered. Then exceptions are logged (if enabled) and finally "rendered" using the defined renderer. Stopping the `Exception.beforeRender` event has no effect, as we always need to render a response to an exception and custom renderers should be used if you want to replace or skip rendering an exception. If undefined, an ExceptionRenderer will be selected based on the current SAPI (CLI or Web).
Inherited | Abstract | Final | Static | Datatype | Header |
---|---|---|---|---|---|
void | void logInternalError(Throwable exceptionToLog) | ||||
IExceptionRenderer | IExceptionRenderer renderer(Throwable exceptionToRender, IServerRequest serverRequest = null) | ||||
DExceptionTrap | DExceptionTrap instance() | ||||
void | void unregister() | ||||
void | void handleShutdown() | ||||
this(Json[string] | this(Json[string] initData) | ||||
void | void handleFatalError(int errorCode, string errorDescription, string fileWithError, int errorLine) | ||||
bool | bool initialize(Json[string] initData = null) | ||||
void | void increaseMemoryLimit(int additionalKb) | ||||
void | void handleException(Throwable exception) | ||||
this(string | this(string newName, Json[string] initData = null) | ||||
void | void logException(Throwable exceptionToLog, IServerRequest serverRequest = null) | ||||
this() | this() | ||||
IErrorLogger | IErrorLogger logger() | ||||
void | void register() | ||||
string | string chooseRenderer() |