Skip to content

Commit 6b35341

Browse files
Adding notes that cover the recent Safari updates .md
Adding notes that cover the recent Safari updates that affects Analytics.js loading and query string tracking.
1 parent 30c092d commit 6b35341

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

src/connections/sources/catalog/libraries/website/javascript/troubleshooting.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ The object means that you are successfully loading Analytics.js onto your websit
1616

1717
![Returning analytics object error](images/CFsktto.gif)
1818

19+
Segment also provides a Chrome web extension, [Segment Inspector](https://segment.com/docs/connections/sources/catalog/libraries/website/javascript/#segment-inspector), that allows you to easily validate that you are successfully loading Analytics.js.
20+
1921
Solution: [Follow the Analytics.js Quickstart Guide](/docs/connections/sources/catalog/libraries/website/javascript/quickstart/)
2022

2123
## Are you loading two instances of Analytics.js?
@@ -74,15 +76,26 @@ The JavaScript console reveals all requests, outbound and inbound, to your brows
7476
- **Safari**: `COMMAND+OPTION+I` (Mac) or `CTRL+ALT+I` (Windows) and then click on the **Console** tab.
7577
- **IE**: `F12` and then click on the **Console** tab.
7678

79+
Alternatively, Segment provides the [Segment Inspector](https://segment.com/docs/connections/sources/catalog/libraries/website/javascript/#segment-inspector), a Chrome web extension designed to enable debugging of your Segment integration in web applications that are instrumented with Analytics.js.
80+
7781
## Is there a size limit on requests?
7882

7983
Yes, 32KB per event message. Events with a payload larger than 32KB are accepted by Analytics.js, with the browser returning a `200` response from the Segment servers, but the event will be silently dropped once it enters Segment's pipeline.
8084

85+
## Analytics.js failing to load due to Ad Blockers or Browser Privacy Settings
86+
87+
Segment advises against circumventing tracking blockers or browser privacy settings for client-side tracking. The user has ultimate control as to what gets loaded on the page. Segment acknowledges that this can result in some data loss in client-side tracking and suggests [workarounds](https://segment.com/docs/connections/sources/catalog/libraries/website/javascript/#ad-blocking) to address this issue.
88+
89+
## Analytics.js and Destinations not tracking query string parameters on certain Safari iOS and MacOS Versions
90+
91+
Please be aware that due to updates in certain Safari iOS and MacOSversions, our Analytics.js and Destinations tools might experience limitations in capturing query string parameters. As a result, customers may notice some events missing campaign information.
92+
8193
## If Analytics.js fails to load, are callbacks not fired?
8294

8395
In the event that Analytics.js does not load, callbacks passed into your API calls do not fire. This is as designed, because the purpose of callbacks are to provide an estimate that the event was delivered and if the library never loads, the events won't be delivered.
8496

8597
## Why do I see a network request to `/m`?
98+
8699
In May 2018, Segment released a change to Analytics.js that collects client-side performance metrics in Analytics.js. This includes metrics like:
87100

88101
- When client side integrations are initialized and when they fail
@@ -93,6 +106,7 @@ Segment added these metrics to proactively identify and resolve issues with indi
93106
There should be no noticeable impact to your data flow. You may notice Analytics.js make an extra network request in the network tab to carry the metrics data to Segment's servers. This should be very infrequent since the data is sampled and batched every 30 seconds, and should not have any impact of website performance.
94107

95108
## How are properties with `null` and `undefined` values treated?
109+
96110
Segment uses the [`JSON.stringify()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify){:target="blank"} method under the hood. Property values set to `null` or `undefined` are treated in accordance with the expected behaviour for the standard method:
97111

98112
```js

0 commit comments

Comments
 (0)