[
https://issues.apache.org/jira/browse/UNOMI-1024?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Serge Huber updated UNOMI-1024:
-------------------------------
Description:
h3. Summary
Websites set up with an older example from the Unomi tracker tutorial lose
their page views and clicks on Unomi 2.4 and later, without any visible error.
The fix makes them work again with no change on their side.
Technical detail: the tracker sends digitalData.page as the page properties,
and the page schema has not allowed "attributes" since 2.4.0 (UNOMI-790;
UNOMI-800 was the same symptom). Unomi 2.0 to 2.3 accepted only an empty
"attributes".
h3. Approach
* Leave out an empty "attributes"; send a non-empty one as before, for extended
schemas.
* Never change digitalData.page.
* Remove "attributes" from the examples in builtin-event-types.adoc.
h3. How to test
* Unit tests for the three cases (empty, non-empty, none).
* yarn test:servers on Unomi 2.3, 2.7, 3.0 and 4.0; requests identical to 1.5.0
except the empty "attributes".
was:
h3. Summary
Websites set up by following an older version of the Unomi tracker tutorial
lose their page views and clicks when they use Unomi 2.4 or later: Unomi
discards them without any visible error, so reports and segments based on
browsing behaviour stay empty. The example in the manual contained a setting
that newer Unomi versions no longer accept, and the tracker still sends it. The
fix makes these websites work again without any change on their side.
Technical detail: the tracker sends the whole digitalData.page object as the
properties of the page item (buildSourcePage, buildTargetPage). UNOMI-790
removed "attributes" from the page schema in 2.4.0 (UNOMI-800 was the same
symptom on the sample page), so from 2.4 an event whose page has "attributes",
even empty, fails validation and is dropped. Unomi 2.0 to 2.3 accepted an empty
"attributes" (or null), but no content in it: an "attributes" with content is
rejected by every default page schema, so only deployments that extended the
schema store it. Checked with Unomi 2.3.0, 2.7.0, 3.0.0 and 4.0. The tracker
tutorial and README no longer show "attributes" (UNOMI-1019), but the event
examples in builtin-event-types.adoc still do.
The goal of this ticket is that sites with the old setup get their events
stored again, without changing anything on their side and without changing
anything for other sites.
h3. Decided approach
* Leave "attributes" out of the page properties sent when it is empty. It
carried no data, so nothing is lost with Unomi 2.0 to 2.3, and the events are
stored again with 2.4 and later.
* Send a non-empty "attributes" exactly as before (the same object), for
deployments that extended the page schema to accept it.
* Never change digitalData.page itself: the page properties sent are a copy
without "attributes", so site code that reads digitalData.page sees no
difference.
* Pages without "attributes" are sent exactly as before.
* Remove "attributes" from the event examples in builtin-event-types.adoc
(apache/unomi).
Note for the release notes: a rule on a Unomi 2.0 to 2.3 server that tests for
an empty page "attributes" would stop matching.
h3. How to test
* Unit tests: with "attributes": {} the page properties sent have no attributes
and digitalData.page keeps them; with non-empty attributes, and without
attributes, the page object is sent as is.
* yarn test:servers: a page with empty "attributes" gets its events stored on
every server (Unomi 2.3.0, 2.7.0, 3.0.0, 4.0); with non-empty "attributes" the
server drops the event, as with 1.5.0.
* yarn test:servers compare-1.5.0: the requests are identical to those of the
published 1.5.0, except for the empty "attributes" no longer sent.
> Page views and clicks are lost for websites set up with an older example from
> the Unomi manual
> ----------------------------------------------------------------------------------------------
>
> Key: UNOMI-1024
> URL: https://issues.apache.org/jira/browse/UNOMI-1024
> Project: Apache Unomi
> Issue Type: Bug
> Components: unomi-tracker
> Affects Versions: unomi-tracker-1.5.0
> Reporter: Serge Huber
> Priority: Major
> Fix For: unomi-tracker-1.6.0, unomi-tracker-2.0.0
>
>
> h3. Summary
> Websites set up with an older example from the Unomi tracker tutorial lose
> their page views and clicks on Unomi 2.4 and later, without any visible
> error. The fix makes them work again with no change on their side.
> Technical detail: the tracker sends digitalData.page as the page properties,
> and the page schema has not allowed "attributes" since 2.4.0 (UNOMI-790;
> UNOMI-800 was the same symptom). Unomi 2.0 to 2.3 accepted only an empty
> "attributes".
> h3. Approach
> * Leave out an empty "attributes"; send a non-empty one as before, for
> extended schemas.
> * Never change digitalData.page.
> * Remove "attributes" from the examples in builtin-event-types.adoc.
> h3. How to test
> * Unit tests for the three cases (empty, non-empty, none).
> * yarn test:servers on Unomi 2.3, 2.7, 3.0 and 4.0; requests identical to
> 1.5.0 except the empty "attributes".
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)