1 package org.imageconverter.util.logging; 2 3 import java.lang.annotation.Documented; 4 import java.lang.annotation.ElementType; 5 import java.lang.annotation.Inherited; 6 import java.lang.annotation.Retention; 7 import java.lang.annotation.RetentionPolicy; 8 import java.lang.annotation.Target; 9 import java.time.temporal.ChronoUnit; 10 11 import org.springframework.boot.logging.LogLevel; 12 13 @Target({ElementType.METHOD, ElementType.TYPE}) 14 @Retention(RetentionPolicy.RUNTIME) 15 @Inherited 16 @Documented 17 public @interface Loggable { 18 19 LogLevel value() default LogLevel.DEBUG; 20 21 LogLevel errorValue() default LogLevel.ERROR; 22 23 ChronoUnit unit() default ChronoUnit.MILLIS; 24 25 boolean showArgs() default true; 26 27 boolean showResult() default true; 28 29 boolean showExecutionTime() default true; 30 }