Expand my Community achievements bar.

SOLVED

Show events in profile when loaded from a source

Avatar

Level 3

I am loading purchase events from Azure ADLS location. The events are coming as JSON. I am loading the events into the Purchase table of class XDM ExperienceEvent.

MDM Id is the primary if in my profile schema and PurchaseId is primary identity in Purchase with MDM Id as the secondary identity. Purchase Date is mapped with the timestamp field of the experience event and PurchaseId with the _id table and additional custom column which is primary id

Both the schemas and data set associated with it has the are enabled for profile. 

I was expecting the purchase events to show up in the profile details page under "Events" tab, but it didn't. I believe I read somewhere that the events are shown up to certain duration (i don't recall what that duration was), so I was expecting those recent purchase events to show up at least. I am able to see those events using query service without any issue.

I that found this link which says csv upload it is not supposed to be shown under events and think it is probably applicable to any type of upload via source (in my case json) but not sure

Events are not visible for a profile in AEP | Adobe Experience Cloud

Is there any alternative how the events loaded by batch can be displayed in UI?

1 Accepted Solution

Avatar

Correct answer by
Level 3

Hi,

 

Did you check the monitoring if the events actually arrived in the profile? It sometimes takes a bit of time till they arrive there.

 

benediktbuchert_0-1668886781786.png

 

Also, one thing I stumbled over is to make sure your _id is globally unique across all datasets. If an event with the same ID has been imported to the profile before, it will not import a new one, as the events are immutable. I tend to namespace the _id with the name of the dataset.

View solution in original post

3 Replies

Avatar

Correct answer by
Level 3

Hi,

 

Did you check the monitoring if the events actually arrived in the profile? It sometimes takes a bit of time till they arrive there.

 

benediktbuchert_0-1668886781786.png

 

Also, one thing I stumbled over is to make sure your _id is globally unique across all datasets. If an event with the same ID has been imported to the profile before, it will not import a new one, as the events are immutable. I tend to namespace the _id with the name of the dataset.

Avatar

Community Advisor

@itsme based on the details you mentioned, it looks like the data is present in the data lake since you are able to check via query services. But looks like it did not make it to the Unified Profile Store (UPS) - I assume it got errored out.

As @benedikt-buchert mentioned, please check via monitoring and see if you find the error. You can look at the dataflow and find the error. Ideally, the profile in UPS gets updated in less than a min.

@benedikt-buchert does the _id need to be unique across all datasets or unique within a dataset? One thing that is not mandated OOB in the event data set is eventType - but it's strongly recommended that this should always be populated. So in your case where you faced the issue with _id, was the eventType populated?

Avatar

Level 3

Yes, _id does need to be globally unique. Otherwise, there is an ID collision in the NoSQL (Profile Storage) database. I was facing this issue before. Even type does not need to be populated. It was set in my case, though.