Member since
07-29-2020
574
Posts
323
Kudos Received
176
Solutions
My Accepted Solutions
| Title | Views | Posted |
|---|---|---|
| 2115 | 12-20-2024 05:49 AM | |
| 2410 | 12-19-2024 08:33 PM | |
| 2161 | 12-19-2024 06:48 AM | |
| 1443 | 12-17-2024 12:56 PM | |
| 2059 | 12-16-2024 04:38 AM |
03-08-2024
01:48 AM
1 Kudo
Hi @MvZ , What service pack you have installed for SQL Server 2008 ? It seems the support for TLS 1.2 has started from service pack 3 and above.
... View more
03-06-2024
04:07 AM
1 Kudo
Hi, Can you provide screenshot of the lookup record processor and the lookup record service configurations?
... View more
03-06-2024
02:54 AM
2 Kudos
Hi @AidenMartin , According to the documentation of the validate csv apply processors, the Optional has to take a type parameter : " ... Schema property: Null, ParseDate("dd/MM/yyyy"), Optional(ParseDouble()) Meaning: the input CSV has three columns, the first one can be null and has no specification, the second one must be a date formatted as expected, and the third one must a double or null (no value). ... " If you are not sure of the data type then just use Null instead of Optional, which means the value can be provided or not. reference: https://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi/nifi-standard-nar/1.23.2/org.apache.nifi.processors.standard.ValidateCsv/additionalDetails.html If you find this is helpful please accept solution.
... View more
03-06-2024
02:37 AM
2 Kudos
This is interesting. I never came across a case where you need to specify the content-type on the form data itself & I cant find anything for that in the invokehttp documentation. @MattWho , @cotopaul , @joseomjr do you have any information on this? When I look into how the type is passed using curl for example, it looks like the following: --form 'Parameters="...";type=application/json' I'm not sure this is going to work but when you set the post:form:parameters value try to append the type to the json string as follows: ${JSONAttributes:append(";type=application/json")} If that doesnt help. Im not sure how can you do such thing without using something like ExecuteScript processor and write code like groovy to execute the API call. I apologize if I did not have straight answer.
... View more
03-05-2024
07:24 PM
Hi @bou7miiiz , Its hard to tell what is wrong from what you provided because you seem to everything setup accordingly but Im not familiar with what type of API you are working with so its hard to tell. First, I would like to know what is happening when you run the InvokeHttp? are you getting an error? what type of error and response code are you getting? Second, I noticed in Postman you are referencing the json parameters value form a file, did you try to pass the json itself instead because that is what you are doing with Nifi.
... View more
03-05-2024
07:09 PM
Where did you find this code , or did you add to the __init __ of the processor itself: def __init__(self, jvm, **kwargs):
super().__init__()
self.jvm = jvm I could not get it to compile , it kept saying super has no attribute jvm 😞
... View more
03-05-2024
07:28 AM
1 Kudo
@coelacanth, My pleasure! Im glad it worked . If you find a better way than having to manually create the bin folder then copy the files from the script folder to it and restarting nifi every time you add new python processor or create the bin folder, please let us know and share. Right now for every python processor I create I have to restart my nifi instance 2 times: 1- Deploy the processor to the canvas so that the venv is created. 2- After the venv is created to copy the files to the bin folder. I know its possible to create vevn manually under the work folder and get it setup without relying much on Nifi to do it but Im afraid that might interfere with the process and cause other problems. @pvillard, @MattWho , @cotopaul please if you know better workaround for this let us know.
... View more
03-04-2024
01:46 PM
1 Kudo
Hi @coelacanth , Its me again from the first post you read that helped you resolve the first issue 🙂 All I can say is welcome to the club. the good news for you is i already went through this process and got it working - on windows as well- so hopefully I can get you going as well and save you some headache and time. Basically Enabling the Python Extension out of the box on windows is not going to work and Im not sure if there was any testing done on windows before releasing this feature. First, you are right about python3 vs python as there is no such file under python windows and it should be changed to python. The second problem is the bin folder as it doesnt get created when the python venv gets deployed to the controller folder first when you enable this feature, or when you add any new python extension processor. It seems under windows it creates a folder called Script where it stores all the python commands (.exe), so all you have to do is basically create the bin folder uder .\work\python\controller then copy whatever is under the "Script" folder to it and restart nifi and hopefully it will work. You only have to do that once for the controller folder but when you add new python processor and the vevn gets created for it under \work\python\extensions\[Custom Processor]\2.0.0-SNAPSHOT\ You have to do the same thing of creating the bin folder and copying whatever in the Script folder to get it working. Actually the steps I do are the following: 1- Create the Custom processor 2- Copy the custom processor to the python extension folder .\python\extensions 3- Run Nifi the first time to create the Venv for the new processor under .\work\python\extensions\[Custom Processor]\2.0.0-SNAPSHOT\ 4- once the venv folder is created, turn nifi OFF because the custom processor is not going to load correctly and its going to keep saying "installing third party components...". 5- Create the bin folder and copy whatever in the script folder to it \work\python\extensions\[Custom Processor]\2.0.0-SNAPSHOT\bin 6- Run nifi again. If everything is setup correctly with the processor and there is no compiler error , it will take few mins to download the dependencies ( depends ho many you have) and then it should work. The Nifi development community needs to fix this bug either internally looking for the script folder aside from the bin folder, or make that configurable in the nifi.properties. Note about out of the box python extensions: You might have problem getting the dependencies downloaded correctly for the ParseDocument extension. You might need to download those dependencies manually to get it to work and here is another trick for you: if you happen to download those dependencies manually you need to create a file "dependency-download.complete" with "True" value inside under the processor path \work\python\extensions\[Custom Processor]\2.0.0-SNAPSHOT\ to let nifi know that its finished downloading the dependencies and remove the error from the processor. @pvillard, this is another issue that needs your attention. I mean to write an article about this but did not have the time. Any way hopefully that is enough info to get you going. let me know if you have any other questions. If you find this is helpful, please accept solution. Thanks
... View more
03-04-2024
01:18 AM
1 Kudo
Hi @piyush7829 , Why dont you do that using JoltTransformation as well. I think you can do it before split or after depending what is the json is and what is the expected new output. JsonJoltTransformation processor is very powerful and it allows you to use Expression Language which mean you can reference attributes in the jolt spec and assign them to new key. For example if you want to assign the value of the attribute ${series_id} to new key called series_id , then in jolt spec you can do that as follows: [
{
"operation": "shift",
"spec": {
.....
"#${series_id}":"series_id"
......
}
}
] If you need help with the jolt spec please post sample input and expected output and I will he happy to help you. If you find this is helpful please accept solution. Thanks
... View more
03-02-2024
07:55 AM
1 Kudo
Hi @saquibsk , The UpdateRecord processor uses the Nifi Record Path syntax to traverse record structure : https://nifi.apache.org/docs/nifi-docs/html/record-path-guide.html When your Replacement Value Strategy is set to Record Path Value then the path has to adhere to the record path syntax as explained in the link. The record path allows you to update structured data even if you have more than one record in an array of records. Please see the documentation here as well for more help: https://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi/nifi-standard-nar/1.7.1/org.apache.nifi.processors.standard.UpdateRecord/additionalDetails.html If you are having more issues it would help to provide sample input and the expected output result alongside the relevant processors configuration screenshot. This will enable the community to help you better and resolve your issue faster. If you find this is helpful please accept solution. Thanks
... View more