This repo contains samples scripts for use with Apache NiFi's scripting components, especially the ExecuteScript processor. Additionally, the repo may be cloned and modified to unit test custom scripts using NiFi's mock framework.
Scripts are designed to demonstrate basic ExecuteScript techniques in various languages:
Topic | Groovy | Javascript | Python |
---|---|---|---|
Reading and writing flowfile attributes | attributes.groovy | attributes.js | attributes.py |
Logging | log.js | log.py | |
Transforming an input flowfile to a single output | transform.js | transform.py | |
Splitting an input flowfile to multiple outputs | split.js | split.py | |
Writing counter metrics | counter.js | counter.py | |
Reading nifi.properties | properties.js | properties.py | |
Reading and writing state | state.js | state.py | |
Parsing URIs | parse_uri.groovy | ||
Converting XML to JSON | xmlToJson.groovy | ||
Date/Time formatting | datetime.groovy | datetime.js |
Please help. These sample scripts are very likely to be buggy, unnecessarily complicated, misguided, downright stupid, or all of the above. Issues and pull requests are welcome.
Apache License 2.0