@Override public Object get(@Nullable Object key) { return ( "name".equals(key) ? record.getLoggerName() : "level".equals(key) ? record.getLevel().getName() : "class".equals(key) ? record.getSourceClassName() : "method".equals(key) ? record.getSourceMethodName() : "message".equals(key) ? record.getMessage() : "params".equals(key) ? record.getParameters() : ExceptionUtil.throW(new IllegalStateException("Value of variable '" + key + "' missing")) ); } };