Member since
07-29-2020
526
Posts
261
Kudos Received
157
Solutions
My Accepted Solutions
Title | Views | Posted |
---|---|---|
97 | 09-03-2024 12:36 AM | |
132 | 08-30-2024 06:23 AM | |
260 | 08-26-2024 04:39 PM | |
199 | 08-21-2024 12:01 PM | |
201 | 08-10-2024 03:18 AM |
06-16-2022
07:04 AM
Im not familiar with the postgress sql but should not be like this: INSERT INTO table(column1, column2, …)
VALUES
(value1, value2, …); Also for the value you need to provide the attribute name , so it should be something like this: INSERT INTO table(jsonDataColumn) VALUES(${data});
... View more
06-16-2022
06:58 AM
Not sure if this is related , but if you are setting up a secure cluster the property nifi.cluster.protocol.is.secure should be true. If not just make sure you follow steps mentioned in the following url and you have not missed anything: https://nifi.apache.org/docs/nifi-docs/html/walkthroughs.html#creating-and-securing-a-nifi-cluster-with-the-tls-toolkit
... View more
06-16-2022
06:29 AM
The way PutDatabaseRecord works is basically once it reads the json , it will try to match the json keys to the DB columns hence the error you are getting if not being able to map fields to columns, in your case it will be looking for columns: name & surename to store their values, so it wont store the whole json in one field. I had similar situation where I needed to store json and the only way I can think of is first load the json into an attribute using the ExtractText Processor, then use PutSQL processor and write the insert statement to the target table where the column is the Data and the value is the attribute contain the json value for example ${JsonDataAttribute}. You have to be careful how big your json is, if its too big then you have to figure out another way, but if its small then no harm from saving into an attribute.
... View more
06-16-2022
05:55 AM
Hi, Can you explain what happen when you use the PutDatabaseRecrod Processor?
... View more
06-15-2022
05:59 AM
Hi, It could be an encoding issue that I faced a while back. please check out this post: https://community.cloudera.com/t5/Support-Questions/Illegal-Arg-Exception-when-parsing-CSV-file-though-the-split/td-p/300565 Try to change the character set to UTF-16 to see if that will work. Hope that helps. Thanks
... View more
06-14-2022
10:06 AM
first you need to check if there is an attribute called filename on the original flowfile and its the same passed the output stream flowfile. If there is, then you should specify it as "filename" in the merge content property and NOT as "${filename}".
... View more
06-14-2022
07:42 AM
how is the original flowfile is generated. usually you should have filename attribute set by default on the original flowfile. this should be unique for the flowfile and this filename could be passed to the output stream, can you check that?
... View more
06-14-2022
06:59 AM
Is there a unique attribute on the original flowfile (like filename) that gets set on the output stream ? if so, you can set the mergeContent processor property "Correlation Attribute Name" to the attribute containing the unique value that is shared between original and output, this way you guarantee that only related original and output are getting merged.
... View more
06-14-2022
06:01 AM
Hi, Not sure I fully understand your question. Can you please provide screenshot of the flow you have and explain the expected output of each processor? From what I can understand you want to keep the original file but somehow you want to attach the output of the command stream to it. There is property on the ExecuteCommandStream Processor called "Output Destination Attribute" where you can store the output stream as an attribute on the original flow file. if you want to modify the content of the flow file after that based on the new attribute then you can use ExecuteScript Processor.
... View more
06-12-2022
06:03 AM
Hi, Can you give an example? I think if the url in the flowfile content you can use ExtractText processor where you can create dynamic property and use regex to extract the pattern you need. If the url in an attribute then you can use UpdateAttribute where you can also create dynamic property and use Expression Language function like find(regex) to extract the domain for a given attribute. Example ${FullUrl.find(regex)}. To set the regex for finding domain from url, checkout this link: https://regex101.com/r/jN6kU2/1
... View more