Aldrin,

The overall goal is to extract some subset of attributes from tweet's JSON,
create a new JSON and ingest it into Elasticsearch for indexing.
Hope this helps.

On Mon, Apr 25, 2016 at 11:18 AM, Aldrin Piri <[email protected]> wrote:

> Igor,
>
> Thanks for the template.  It looks like the trouble is with
> AttributesToJSON converting the attribute, which in your case, is a JSON
> blob, into additional JSON and thus the escaping to ensure nothing is
> lost.  Are you just trying to get that entity body out to a file?  If so,
> the AttributesToJSON is likely not needed and you should be able to use
> something like ReplaceText to write the attribute to the FlowFile body.
> Please let us know your overall goal and we can see if the right mix of
> components already exists or if we are running into a path that may need
> some additional functionality.
>
> Thanks!
> Aldrin
>
>
>
> On Mon, Apr 25, 2016 at 10:33 AM, Igor Kravzov <[email protected]>
> wrote:
>
>> Hi Aldrin,
>>
>>
>> Attached please find the template.  In this workflow I want to pull
>> "entities" and "user" entries for Twitter JSON as entire structure. I only
>> can do it if I set Return Type as JSON.
>> Subsequently I use AttributesToJSON to create a new JSON file. But
>> returning values for "entities" and "user" are escaped so I had to clean
>> these before converting to JSON.
>>
>> Hope this helps.
>>
>> On Mon, Apr 25, 2016 at 10:15 AM, Aldrin Piri <[email protected]>
>> wrote:
>>
>>> Hi Igor,
>>>
>>> That should certainly be possible.  Would you mind opening up a ticket (
>>> https://issues.apache.org/jira/browse/NIFI) and providing a template of
>>> your flow that is causing the issue?
>>>
>>> Thanks!
>>>
>>> On Mon, Apr 25, 2016 at 10:09 AM, Igor Kravzov <[email protected]>
>>> wrote:
>>>
>>>> Thanks Pierre. It worked. Looks like I was doing something wrong inside
>>>> my workflow.
>>>> Would not be it feasible to have an option for EvaluateJsonPath
>>>> processor to have an option to return escaped or unescaped JSON result?
>>>>
>>>> On Mon, Apr 25, 2016 at 7:20 AM, Pierre Villard <
>>>> [email protected]> wrote:
>>>>
>>>>> Hi Igor,
>>>>>
>>>>> Please use ReplaceText processors.
>>>>>
>>>>> 1.
>>>>> Search value : \\
>>>>> Replace value : Empty string set
>>>>>
>>>>> 2.
>>>>> Search value : "\{
>>>>> Replace value : \{
>>>>>
>>>>> 3.
>>>>> Search value : \}"
>>>>> Replace value : \}
>>>>>
>>>>> Template example attached.
>>>>>
>>>>> HTH
>>>>> Pierre
>>>>>
>>>>>
>>>>> 2016-04-24 20:12 GMT+02:00 Igor Kravzov <[email protected]>:
>>>>>
>>>>>> I am not that good in regex. What would be the proper configuration
>>>>>> to do the following;
>>>>>>
>>>>>>    1. Remove backslash from text.
>>>>>>    2. Replace "{ with {
>>>>>>    3. replace }" with }
>>>>>>
>>>>>> Basically I need to clean escaped JSON.
>>>>>>
>>>>>> Like before:
>>>>>>
>>>>>>  
>>>>>> "{\"hashtags\":[{\"text\":\"Apple\",\"indices\":[45,51]}],\"urls\":[{\"url\":\"\",\"expanded_url\":\"\",\"display_url\":\"owler.us/abdLas\
>>>>>>  
>>>>>> <http://owler.us/abdLas%5C>",\"indices\":[64,87]}],\"user_mentions\":[],\"symbols\":[{\"text\":\"AAPL\",\"indices\":[88,93]}]}",
>>>>>>
>>>>>> after:
>>>>>>
>>>>>> {"hashtags":[{"text":"Apple","indices":[45,51]}],"urls":[{"url":"","expanded_url":"","display_url":"owler.us/abdLas","indices":[64,87]}],"user_mentions":[],"symbols":[{"text":"AAPL","indices":[88,93]}]},
>>>>>>
>>>>>> Thanks in advance.
>>>>>>
>>>>>
>>>>>
>>>>
>>>
>>
>

Reply via email to