@Override public void onTrigger(final ProcessContext context, final ProcessSession session) { final String logLevelValue = context.getProperty(LOG_LEVEL).getValue().toLowerCase(); final DebugLevels logLevel; try { logLevel = DebugLevels.valueOf(logLevelValue); } catch (Exception e) { throw new ProcessException(e); } final ComponentLog LOG = getLogger(); boolean isLogLevelEnabled = false; switch (logLevel) { case trace: isLogLevelEnabled = LOG.isTraceEnabled(); break; case debug: isLogLevelEnabled = LOG.isDebugEnabled(); break; case info: isLogLevelEnabled = LOG.isInfoEnabled(); break; case warn: isLogLevelEnabled = LOG.isWarnEnabled(); break; case error: isLogLevelEnabled = LOG.isErrorEnabled(); break; } if (!isLogLevelEnabled) { transferChunk(session); return; } final FlowFile flowFile = session.get(); if (flowFile == null) { return; } processFlowFile(LOG, logLevel, flowFile, session, context); session.transfer(flowFile, REL_SUCCESS); }