Expand my Community achievements bar.

Webinar: Adobe Customer Journey Analytics Product Innovations: A Quarterly Overview. Come learn for the Adobe Analytics Product team who will be covering AJO reporting, Graph-based Stitching, guided analysis for CJA, and more!

Activity Map link value getting truncated at 128 characters

Avatar

Level 2


We have observed that link under activity map is limited to 128 characters while capturing in network call where as the database limit is 255 characters on Adobe
1. what is the max character length for link under Activity Map?
2. Is there a possibility to increase its length under Admin or anywhere else?

14 Replies

Avatar

Community Advisor

Hi @manoj_katragadda 
that is a very good question. Since this information is transported as context data, I was trying to find hints on this in the documentation, but could not.

 

https://experienceleague.adobe.com/en/docs/analytics/implementation/vars/page-vars/contextdata

Also another thread where this final question remains unanswered

 

@Jennifer_Dungan@brian_au  anything you can add to this?

Cheers from Switzerland!

Avatar

Community Advisor

I just checked, I am getting the same limitation... 

 

The old documentation for "allowable character limits" no longer seems to exist (assuming it even contained context variables / Activity Map)...

 

I've reached out to an Adobe contact who handles a lot of the documentation to see if we can get some clarity... 

 

As it stands, I don't know of any settings to adjust length (and since no other dimensions have anything I suspect it's "what you see is what you get")...

 

It would be nice if we could get the full 255 character length....

Avatar

Employee Advisor

What's the exact value that you're seeing getting truncated?

The hard limit is in bytes, not characters, so if you're using multi-byte characters, the total length will be notably smaller.

There's no limit to what context data variables can hold, since they are not stored in any data tables; processing rules place a context data value into a variable, and the variable that it is placed into is what has its limits.

There is no way to increase storage capacity for any variable. They are hard limits based on Adobe's data architecture.

Avatar

Level 2

We have received a response from Adobe support and this is how the reply went. The gist is, yes its capped at 128 characters and cannot increase. If we want more characters to be captured it is recommended to send te data to custom eVar that can handle 255 characters.

 

"Activity Map link in the Activity Map code, there is a limit set to capture the data, which is capped at 128 characters.

You can see this in the code snippet:

["a.activitymap.link"] = 128 < n.length ? n.substring(0, 128) : n;

Now, even if we want to capture the data completely without truncation, you need to capture it in an eVar. The Activity Map data will be captured as context data and will automatically map on the backend.

Therefore, the only option to capture the Activity Map link is by firing the same data that's being captured in the Activity Map link into an eVar. Since eVars have a length of 255 characters, there will be no truncation.

This is a custom implementation that needs to be done on your end, as we will not be able to assist with the custom implementation. However, the only workaround to capture the Activity Map link completely is to capture that in an eVar whenever the Activity Map link is fired in the server call.
"

Avatar

Community Advisor

Thanks for the info!


Makes me wonder what implications that limitation has on the Activity Map visualization if you don't explicitly set an s_objectID on your links.


Setting additional eVars on your Activity Map calls isn't that straightforward either (there was a discussion about this a few weeks back, that you can hack the Activity Map if needed), but in that terms I would for sure capture both the link URL and current URL / page name in separate eVars, to be on the safe side

Cheers from Switzerland!

Avatar

Level 2

New information uncovered on this.

The character length restriction code "["a.activitymap.link"] = 128 < n.length ? n.substring(0, 128) : n;" provided above only exists if it is custom code migrated from DTM. If the library is Managed by Adobe, by default all Activity Map variables can accept 255 character length and no truncation will happen.

 

We can even change the custom code to "["a.activitymap.link"] = 255 < n.length ? n.substring(0, 255) : n;" and we observed its working and sending upto 255 characters to Adobe

Avatar

Community Advisor

Interesting, where did you find that code?

Cheers from Switzerland!

Avatar

Level 2

Inside Adobe Analytics extension --> Custom Code library--> There is a section "Start ActivityMap Module" where this code is available.

 

If the extension is not Custom library and is Managed by Adobe, we would not find this code or be able to modify

Avatar

Community Advisor

So, you hacked the adobe extension? nice!!!! xD

Cheers from Switzerland!

Avatar

Community Advisor

@manoj_katragadda I can assure you this is not the case (i.e. Migration from DTM), we have never used DTM... we went straight from the old s_code to Adobe Launch...  Launch was a completely new setup about 6 years ago... also, the site tracking we have now was a new property that was created 2 years ago to go with our site migration...  all the rules were created fresh at that time.

 

We are using the Adobe Managed Code, always have.... and I can see the 128 truncation looking at the code in the sources panel of my browser...  

Avatar

Employee Advisor

When I read your reply, I was actually in a bit of disbelief - my thoughts were, "there's no way that AppMeasurement would do that, that has to be some sort of custom implementation thing". So, I open up a copy of AppMeasurement, and sure enough, it is in fact getting truncated right there!

I reached out to one of our AppMeasurement developers regarding this thread, and their first impression was that it was a bandwidth optimization, implemented back when image request length mattered significantly more.

I'm finding out if there are any repercussions of modifying the activity map code to truncate at 255 instead of 128. If you want to try that on a development report suite, you're more than welcome to!

Avatar

Community Advisor

Hmm, with Activity Map, I haven't found a way to grab the Activity Map data into an eVar, except through processing rules.. but the truncation has already occurred by that point....  interestingly, the truncation on pageName hasn't happened, so processing rules is fine.

 

Now, while we can attempt to read the value from the s_sq cookie directly, the values are truncated there too... meaning that in order to create a solution using eVars, it would have to be a completely custom solution... 

 

Cookies should be able to store up to 4096 bytes... the test I just did was only 977 bytes, so there shouldn't be an issue on the cookie side to drop that limitation... 

Avatar

Community Advisor

Remember out WebSDK discussion from the other day? But I would not know if the same is available in AppMeasurement. At least s_doPlugins does not really seem to execute, correct?

Cheers from Switzerland!

Avatar

Community Advisor

I am still on AppMeasurement, and without creating my own cookie or sessionstorage solution I cannot see any way to solve it....

 

Activity Map was just added to WebSDK, so I am not sure if the cookies there have the same limitation... you have a little more control on what is set into the schema, but I don't know if you can set the fields properly (there may be a timing issue where custom values into the core items could be overwritten)