I have no knowledge of specifics.  I was not involved with the original
problem.  I just know that I had to flatten the output from threat triage
based on these concerns as part of PR #438 [1].


[1] https://github.com/apache/incubator-metron/pull/438.

On Mon, Apr 3, 2017 at 8:11 PM, Ali Nazemian <alinazem...@gmail.com> wrote:

> Thanks, Nick.
>
> Can you give me more information on what the problem with Solr indexing
> was at the first place? I've got some experience with Solr so I might be
> able to help to fix that situation.
>
> Regards,
> Ali
>
> On Mon, Apr 3, 2017 at 11:55 PM, Nick Allen <n...@nickallen.org> wrote:
>
>> Up to this point, we have been making the assumption that we need to
>> "flatten" complex data types like lists and maps before they get indexed.
>> For example, a list like this...
>>
>> {
>>    users: [ mary, alice, bob ]
>> }
>>
>>
>> is flattened and ends up looking like this...
>>
>> {
>>   users.0: mary,
>>   users.1: alice,
>>   users.2: bob
>> }
>>
>>
>> The goal of the JIRA that I referenced is to make each indexer
>> responsible for transforming the message in whatever way necessary to
>> correctly index the data.  This way enrichments and transformations that
>> occur upstream don't have to worry about this.
>>
>> I *think* the specific issue is that Solr indexing may not work with
>> complex data types like lists and maps in some scenarios.  I *think*
>> Elasticsearch indexing may be fine.  Others may have more insight, but this
>> is what I remember. It is probably worth the effort to validate this in
>> your environment and see if any problems arise.  It should be fairly simple
>> to validate.
>>
>>
>>
>>
>>
>> On Sun, Apr 2, 2017 at 10:50 PM, Ali Nazemian <alinazem...@gmail.com>
>> wrote:
>>
>>> Thank you very much, Nick. I was not aware of the fact that Metron does
>>> not support the multi-value attribute. So, in this case, I need to have a
>>> Stellar function to deal with splitting data and mapping to enrichment CF.
>>> Is that correct?
>>>
>>> Regards,
>>> Ali
>>>
>>> On Mon, Apr 3, 2017 at 6:31 AM, Nick Allen <n...@nickallen.org> wrote:
>>>
>>>> You could use the programmatic enrichment functions to do this.  For
>>>> instance, say you wanted to look-up the impacted users in a company
>>>> 'phonebook' to get more information.
>>>>
>>>> 'impacted-user-0": ENRICHMENT_GET(''phonebook", GET(user_ids, 0), "tb",
>>>> "cf")
>>>>
>>>> 'impacted-user-1": ENRICHMENT_GET(''phonebook", GET(user_ids, 1), "tb",
>>>> "cf")
>>>>
>>>> "impacted-user-2": ENRICHMENT_GET(''phonebook", GET(user_ids, 2),
>>>> "tb", "cf")
>>>>
>>>>
>>>> Also note that there is an open JIRA to ensure that all of the index
>>>> destinations can handle complex types in the message JSON.  This may or may
>>>> not impact your use case, but something to keep in mind.
>>>>
>>>> https://issues.apache.org/jira/browse/METRON-735
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> On Sun, Apr 2, 2017 at 10:26 AM, Ali Nazemian <alinazem...@gmail.com>
>>>> wrote:
>>>>
>>>>> Hi all,
>>>>>
>>>>>
>>>>> I was wondering how I can achieve the following use case in the
>>>>> current version of Metron?
>>>>>
>>>>>
>>>>>
>>>>> I want to have attributes in the Metron JSON object that are an
>>>>> array.  For example, if a threat is impacting multiple users, they are all
>>>>> contained in an attribute (e.g.  user_id:[id1, id2, id3]).   Now if I want
>>>>> to enrich the event with data that requires the user_id as a key in
>>>>> enrichment stored in HBASE, how would I do this?
>>>>>
>>>>>
>>>>> Cheers,
>>>>> Ali
>>>>>
>>>>
>>>>
>>>
>>>
>>> --
>>> A.Nazemian
>>>
>>
>>
>
>
> --
> A.Nazemian
>

Reply via email to