Ravi Kiran G
Ravi Kiran G

Reputation: 467

Customize data-ingest template in kylo

I am trying to customize the standard data ingest template available in kylo using a configuration file. I added the field name nifi.getfile.business_line1=Test in application.properties file available in kylo-services/conf directory. When i try to use nifi expressions in the processor ${business_line1} , it is throwing as business_line1 not found.

Or is there any other way to give customize the standard data ingest?

Can anyone please give a solution to this...

Upvotes: 3

Views: 638

Answers (1)

Greg Hart
Greg Hart

Reputation: 386

Using your example, Kylo will look for all GetFile processors when it creates a feed and replace the 'business_line1' property with the value 'Test'. However the GetFile processor does not allow custom properties and you'll get an error message similar to:

'business_line1' validated against 'Test' is invalid because 'business_line1' is not a supported property

There are a couple ways to solve this:

  1. If you want to use NiFi expressions then you'll need to create an UpdateAttribute processor and add the 'business_line1' property there. Any subsequent processors would be able to access the value as ${business_line1}

  2. If you want all GetFile processors to have the same value for a property, you can set the following property in Kylo's application.properties: nifi.getfile.file_filter=Test

The Kylo documentation goes into more detail about how to use variable substitution: http://kylo.readthedocs.io/en/latest/how-to-guides/ConfigurationProperties.html

Within NiFi you can use the NiFi Expression Language to access flow file attributes: https://nifi.apache.org/docs/nifi-docs/html/expression-language-guide.html

Upvotes: 3

Related Questions