Installing Custom Processors for NiFi

This topic describes how to install custom processors for NiFi.

You can extend the capability of NiFi by installing custom processors, or processors that were not bundled with the NiFi package.

You can use one of the following methods to install custom processors:

Autoloading Custom Processors

Autoloading allows you to install custom processors without restarting NiFi.

See the instructions for Autoloading Custom Processors in the official Apache NiFi documentation.

To check the autoloading process of your custom processors, view /opt/mapr/nifi/nifi-*/logs/nifi-app.log and check the NAR Auto-Loader messages.

For example:
$ cat /opt/mapr/nifi/nifi-*/logs/nifi-app* | grep "NAR Auto-Loader"
2023-05-08 13:03:51,724 INFO [main] org.apache.nifi.nar.NarAutoLoader Starting NAR Auto-Loader for directory ./extensions ...
2023-05-09 13:53:21,793 INFO [NAR Auto-Loader] org.apache.nifi.nar.NarAutoLoaderTask Found ./extensions/nifi-redis-nar-1.19.1.nar in auto-load directory
2023-05-09 13:53:21,797 INFO [NAR Auto-Loader] org.apache.nifi.nar.NarAutoLoaderTask Found ./extensions/nifi-redis-service-api-nar-1.19.1.nar in auto-load directory
2023-05-09 13:53:26,798 INFO [NAR Auto-Loader] org.apache.nifi.nar.StandardNarLoader Starting load process for 1 NARs...
2023-05-09 13:53:26,942 INFO [NAR Auto-Loader] org.apache.nifi.nar.StandardNarLoader Creating class loaders for 1 NARs...
2023-05-09 13:53:26,948 WARN [NAR Auto-Loader] org.apache.nifi.nar.NarClassLoaders Unable to resolve required dependency 'nifi-redis-service-api-nar'. Skipping NAR '/opt/mapr/nifi/nifi-1.19.1/./work/nar/extensions/nifi-redis-nar-1.19.1.nar-unpacked'
2023-05-09 13:53:26,949 INFO [NAR Auto-Loader] org.apache.nifi.nar.StandardNarLoader Successfully created class loaders for 0 NARs, 1 were skipped
2023-05-09 13:53:26,949 INFO [NAR Auto-Loader] org.apache.nifi.nar.StandardNarLoader Finished NAR loading process!
2023-05-09 13:53:31,949 INFO [NAR Auto-Loader] org.apache.nifi.nar.StandardNarLoader Starting load process for 1 NARs...
2023-05-09 13:53:32,149 INFO [NAR Auto-Loader] org.apache.nifi.nar.StandardNarLoader Including 1 previously skipped bundle(s)
2023-05-09 13:53:32,150 INFO [NAR Auto-Loader] org.apache.nifi.nar.StandardNarLoader Creating class loaders for 2 NARs...
2023-05-09 13:53:32,151 WARN [NAR Auto-Loader] org.apache.nifi.nar.NarClassLoaders While loading 'org.apache.nifi:nifi-redis-service-api-nar:1.19.1' unable to locate exact NAR dependency 'org.apache.nifi:nifi-standard-services-api-nar:1.19.1'. Only found one possible match 'org.apache.nifi:nifi-standard-services-api-nar:1.19.1.0-eep-910'. Continuing...
2023-05-09 13:53:32,153 INFO [NAR Auto-Loader] org.apache.nifi.nar.NarClassLoaders Loaded NAR file: /opt/mapr/nifi/nifi-1.19.1/./work/nar/extensions/nifi-redis-service-api-nar-1.19.1.nar-unpacked as class loader org.apache.nifi.nar.NarClassLoader[./work/nar/extensions/nifi-redis-service-api-nar-1.19.1.nar-unpacked]
2023-05-09 13:53:32,154 INFO [NAR Auto-Loader] org.apache.nifi.nar.NarClassLoaders Loaded NAR file: /opt/mapr/nifi/nifi-1.19.1/./work/nar/extensions/nifi-redis-nar-1.19.1.nar-unpacked as class loader org.apache.nifi.nar.NarClassLoader[./work/nar/extensions/nifi-redis-nar-1.19.1.nar-unpacked]
2023-05-09 13:53:32,154 INFO [NAR Auto-Loader] org.apache.nifi.nar.StandardNarLoader Successfully created class loaders for 2 NARs, 0 were skipped
2023-05-09 13:53:32,175 INFO [NAR Auto-Loader] o.a.n.n.StandardExtensionDiscoveringManager Loaded extensions for org.apache.nifi:nifi-redis-service-api-nar:1.19.1 in 21 millis
2023-05-09 13:53:32,194 INFO [NAR Auto-Loader] o.a.n.n.StandardExtensionDiscoveringManager Loaded extensions for org.apache.nifi:nifi-redis-nar:1.19.1 in 19 millis
2023-05-09 13:53:32,292 INFO [NAR Auto-Loader] org.apache.nifi.nar.StandardNarLoader Finished NAR loading process!

Installing Custom Processors

This is the original method for installing custom processors, which requires a restart to NiFi.

See the instructions for Installing Custom Processors in the official Apache NiFi documentation.