org.apache.log4j.spi.ErrorHandler Maven / Gradle / Ivy
Show all versions of reload4j Show documentation
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.log4j.spi;
import org.apache.log4j.Appender;
import org.apache.log4j.Logger;
/**
* Appenders may delegate their error handling to ErrorHandlers
.
*
*
* Error handling is a particularly tedious to get right because by definition
* errors are hard to predict and to reproduce.
*
*
*
* Please take the time to contact the author in case you discover that errors
* are not properly handled. You are most welcome to suggest new error handling
* policies or criticize existing policies.
*
*
* @author Ceki Gülcü
*
*/
public interface ErrorHandler extends OptionHandler {
/**
* Add a reference to a logger to which the failing appender might be attached
* to. The failing appender will be searched and replaced only in the loggers
* you add through this method.
*
* @param logger One of the loggers that will be searched for the failing
* appender in view of replacement.
*
* @since 1.2
*/
void setLogger(Logger logger);
/**
* Equivalent to the {@link #error(String, Exception, int, LoggingEvent event)}
* with the the event parameteter set to null
.
*
*/
void error(String message, Exception e, int errorCode);
/**
* This method is normally used to just print the error message passed as a
* parameter.
*/
void error(String message);
/**
* This method is invoked to handle the error.
*
* @param message The message assoicated with the error.
* @param e The Exption that was thrown when the error occured.
* @param errorCode The error code associated with the error.
* @param event The logging event that the failing appender is asked to log.
*
* @since 1.2
*/
void error(String message, Exception e, int errorCode, LoggingEvent event);
/**
* Set the appender for which errors are handled. This method is usually called
* when the error handler is configured.
*
* @since 1.2
*/
void setAppender(Appender appender);
/**
* Set the appender to falkback upon in case of failure.
*
* @since 1.2
*/
void setBackupAppender(Appender appender);
}