-
Notifications
You must be signed in to change notification settings - Fork 0
Utilisation du "Logger"
Logger consiste à ajouter un traitement pour permettre la transmission et le stockage des messages suite à des événements.
Cette classe est un Logger de défaut si l'utilisateur ne souhaite pas en crée lui-même en implémentant ILogger, par défaut tous les Levels sont activé.
/**
* Ce constructeur permet de créer un Logger. Il est généralement créer depuis le Factory lui-même.
*
* @param name Le nom du Logger.
* @param loggerFactory Le Factory du Logger.
*/
public Logger(@NotNull final String name, @NotNull final ILoggerFactory loggerFactory) {
this.name = name;
this.loggerFactory = loggerFactory;
}
Principalement le Logger desservira depuis une classe, mais il peut tout autant être utilisé à d'autres fins venants de l'imagination d'utilisateur. Vous trouverez quelques exemples d'usage ci-dessous.
final ILogger logger1 = this.loggerFactory.getLogger("Logger1");
final Logger logger1_ = (Logger) logger1;
final Logger mainClassLogger = (Logger) this.loggerFactory.getLogger(this.getClass());
final ILogger mainClassLogger_ = mainClassLogger;
final Logger _mainClassLogger = (Logger) this.loggerFactory.getLogger(MainClass.class);
final ILogger _mainClassLogger_ = _mainClassLogger;
Les Levels dans le Logger ?
Par défaut tous les Levels sont activés. Mais vous pouvez les désactiver et les réactiver comme vous le souhaitez. Vous pouvez aussi vérifier si un Levels est actif.
logger1.isDebugging();
logger1.activateDebugging();
logger1.deactivateDebugging();
logger1.isInforming();
logger1.activateInforming();
logger1.deactivateInforming();
logger1.isErroring();
logger1.activateErroring();
logger1.deactivateErroring();
logger1.isTracing();
logger1.activateTracing();
logger1.deactivateTracing();
logger1.isWarning();
logger1.activateWarning();
logger1.deactivateWarning();
Selon le Levels dont vous souhaitiez emmètre un "logs" vous pourrait le faire de plusieurs façons quelques-unes vont vous êtes présentés.
logger1.debug("message");
logger1.info("message", new Throwable("with errors"));
logger1.error("{MessageFormater}", new Object());
logger1.trace("{MessageFormater}", new Object(), new Object());
logger1.warn("{MessageFormater}", new Object(), new Object(), ...);
RemasteredLogger is a logger as simple as it is complex, it uses SLF4j as an API base. This logger provides the developer with ease of use for a wide variety of utility. This also allows the simplicity of saving under several loggers but also the complexity of being able to create “Class” or single event loggers.
Class | Version | Security |
---|---|---|
Logger | ||
ILogger | ||
LoggerFactory | ||
ILoggerFactory |
// https://mvnrepository.com/artifact/codes.wesley-dev/remasteredlogger
implementation group: 'codes.wesley-dev', name: 'remasteredlogger', version: '1.1.4'
Jetbrains Annotations
SLF4j
// https://mvnrepository.com/artifact/org.slf4j/slf4j-api
implementation group: 'org.slf4j', name: 'slf4j-api', version: '2.0.0-alpha1'
// https://mvnrepository.com/artifact/org.jetbrains/annotations
implementation group: 'org.jetbrains', name: 'annotations', version: '20.1.0'
Version | Java Compatibility |
---|---|
1.1.4 | Java 8 and Upper |
1.1.3 | Java 9 and Upper |
<= 1.1.2 | ❌ (Security and Compatibility) |
Wesley Levasseur — Creator, Initial Work - KanekiReal