Closed bogy0 closed 2 years ago
I'm also having a similar problem. I don't get any analytics data on my dashboard though.
I added this to my Gatsby project by adding inject
to gatsby-browser.js
, which does its job and adds the script to the <head>
. But the va/script.js
gives a 404, which makes sense because there's no such file anywhere. Is Vercel supposed to intercept and serve this file?
I also have rewrites defined in my project so maybe this is overriding the hypothesized intercept. This may be an edge case.
But the va/script.js gives a 404, which makes sense because there's no such file anywhere. Is Vercel supposed to intercept and serve this file?
Yeah same here. Have another site that has this package working & manually added the /va/script.js
to my public/
directory but then got another error from failing to post to /va/view
.
Does seem like it's usually expected that Vercel will add / intercept any requests to /va/...
endpoint(s) but it isn't for some reason?
Seeing a 404 as well with an Astro project, using both the plain HTML approach as well as using inject()
.
Possibly not the reason y'all are seeing the error but I was also getting a 404 for the injected script when deploying @vercel/analytics
. Turns out you first have to enable the feature in the dashboard and then deploy the library (a re-deploy fixed it for me).
Unfortunately, re-deploying my project is not solved the error log in my case.
As @max correctly pointed out, the mentioned path /va/script.js
will become available on your next deployment after you enabled the feature.
If you added the package before you enabled the feature, you can trigger a redeployment which has the same effect.
@bogy0 It seems like the error you're seeing is related to your browser as you already get data. Have you tried disabling all extensions/ad-blockers?
Same problem here. Iยดve already tried all steps (re-deploying, enabling/disabling, etc.) but still have the same error as @bogy0.
Would you mind creating a minimal reproduction?
Ideally a small repo that gets deployed to Vercel so we can have a closer look!
will do later today
Iยดve also a simple app if you want to take a look
I also tried redeploying but didn't work in my case. It's not minimal but my blog, for which I want to use the analytics, is open-source.
I also tried redeploying but didn't work in my case. It's not minimal but my blog, for which I want to use the analytics, is open-source.
Thanks for providing an example!
It seems like that your custom 404 page is catching all routes โ including the /va/script.js
URL.
You have to instrument Gatsby in a way that it ignores this URL.
Thanks, I added the redirect manually to bypass Gatsby with the this config, which is transformed with gatsby-plugin-zeit-now plugin. This fixed the 404 issue and requests are actually sent and response is received, but my dashboard doesn't load any data.
@frontsideair the script is available behind your own domain and not via vercel.com
.
Please change vercel.com
to your own domain.
I understand and removed the redirect to vercel.com
, I haven't found a good workaround so I'm giving up on this for now. Waiting for an official solution.
Same for us. With rewrites enabled the @vercel/analytics script throws 404.
+1 - facing the same issue. Some guidance on how best to handle both a 404 page + allowing the analytics package to come through would be great.
I created a static blank /va/script.js
on my Astro site in hopes that would get replaced, but looks like that didn't do anything either.
Same issue with SvelteKit.
Having the same problem (script 404) on a Next 13 app (still using /pages
) with a custom 404 page. disabled & enabled the feature in the vercel UI again and redeployed, still 404ing. Also not seeing any data in the Audience dashboard which I think is just a side effect. It says "Vercel Analytics is set up, but detected a non-production environment." on my local though, so it's at least trying to do something.
Same here (Next 13)
We're actively working on a solution for this issue. We'll keep you posted!
Same problem, I get a Uncaught SyntaxError: Unexpected token '<' (at script.js:1:1)
and cannot access any analytics.
I'm using Vue v2, and tried injecting it with the inject()
call in both the app.js mounted()
callback, and in main.js when creating the Vue app.
Also tried using it in the HTML <script async src="/va/script.js"></script>
.
In my routes I have this however, not sure if that is causing a problem like the comments above or how I would go about fixing that.
{
path: "/:catchAll(.*)",
name: "NotFound",
redirect: "/",
meta: {title: "๐ - 404"},
},
We're actively working on a solution for this issue. We'll keep you posted!
Any updates?
There seems to be an incompatibility with the i18n
configuration in next.config.js
.
Removing i18n
from my next.config.js did resolve the issue for me.
Happening on our NextJS site hosted on Vercel too. i18n worth more than analytics at the moment so will wait for official fix.
Hey everyone! We just rolled out the fix for this issue. You will have to redeploy your apps to make it work.
Let us know how it goes ๐
Thanks @tobiaslins but I'm getting the same error. Re-enabled the analytics, updated the code, re-deployed, but same https://www.somersetstrikers.co.za/va/script.js
404 error.
I got the analytics to work using the plain HTML approach in my project (didn't even need to install the NPM package). Thank you!
@tobiaslins Can confirm that it is working now for my Nuxt app (#5). I got another app (SvelteKit) working with a similar method too.
Thanks @tobiaslins but I'm getting the same error. Re-enabled the analytics, updated the code, re-deployed, but same
https://www.somersetstrikers.co.za/va/script.js
404 error.
Hi @paulmwatson, it looks like you enabled Analytics after deploying the project. It needs to be enabled before making the deployment. Could you re-deploy again and check? :)
Works for me as well, thanks! As a docs suggestion, I added the inject script to gatsby-node.js
for Gatsby, as it seemed like the correct place for it.
Thanks @dglsparsons, just did a re-deploy there (leaving analytics enabled) and same error.
Same, redeployed multiple times while analytics enabled and still seeing 404
Okay, it seems like we still have some issues relating to i18n interfering with analytics. We're working on a fix for sites using i18n now. I believe sites without i18n should work fine though.
@tobiaslins still having the same error with SvelteKit
@vacodoceo can you please share the last deployment url with us to take a closer look?
I can confirm that it is now working for my SvelteKit app after I did a redeployment and leaving audiences enabled.
Hi, further update here: we've shipped a change that should resolve any issues with i18n
interference. You'll need to redeploy (again) to see the changes, but ๐ค this resolves any remaining issues! Let me know if it doesn't work :)
@tobiaslins I just checked again and it's working. I enabled audiences, redeployed, and it started working. It's strange because I redeployed a couple of times an hour ago and it didn't work, and I don't think enabling audiences was what fixed it.
Anyway, thanks for the support!
@vacodoceo we just rolled out a fix for i18n, it takes a while until it's available for everyone! thanks for confirming ๐ค
It works with SvelteKit after redeploying! Thank you so much. ๐๐ผ
It works now! ๐
Excellent, it works now, thanks for the work
Works for us too ๐
Works, thanks! :)
Now it's working with i18n. Thanks!
same issue
@FlatMapIO @Dogtiti can you please send me a deployment URL so I can take a look for you? Happy to dig deep!
First of all, great work with the updates. Watching the conference was really inspiring. Of course, my first thing to do was to update one of my Next.js projects and try the new goodies.
At one point I decided to try out this new Analytics feature called Audiences, but after adding it to the project I am getting these errors in the console.
After some quick search in the vercel org I came across this repository where I found a reference for this
va/script.js
file.Overall, the audiences feature is working, I am getting visitor data in the newly enabled dashboard page; the issue only is that the browser logging this error.
If you need further details, example codes, let me know, but what i did was basically follow your guide:
@vercel/analytics
Analytics
react component into the_app.jsx
file, like this: