GoAccess seems pretty cool and is probably a good task for the job, when you need something simple, thanks for recommending it: https://goaccess.io/
Even if you have analytics of some sort already in place, I think it'd probably still be a nice idea to run GoAccess on your server, behind some additional auth, so you can check up on how the web servers are performing (in lieu of other options that aggregate your web server logs).
That said, I'd still say that the analytics solutions out there, especially self-hostable ones like Matomo, are quite nice and can have both UIs that are very easy to interact with for the average person (e.g. filtering data by date range, or by page/view that was interacted with), as well as have a plethora of different datasets: https://matomo.org/features/
I think it can be useful to have a look at what sorts of devices are mostly being used to interact with your site, what operating systems and browsers are in use, how people navigate through the site, where do they enter the site from and how they find it, what the front end performance is like, or even how your e-commerce site is doing, at a glance, in addition to seeing how this changes over time.
As for performance, I guess it depends on whether you care about any of the above, whether they actually help you make your site better. If performance was the top goal, we probably wouldn't be using Angular, React or anything like that in the first place, but only very lightweight options. Or, you know, not putting ads or auto playing videos on the sites either.
People have also said good things about Plausible Analytics as well: https://plausible.io/
However, for devops, relying too much on these tools can be a trap, potentially causing security and server issues without immediate detection. Our team opts for goaccess for this reason. We prioritize accurate data from logs and scrutinize traffic patterns, focusing beyond just distinguishing between human and bot counts, a task we leave to the marketing/product department.
And you can use your analytics data to better understand your users because again most bots won't trigger your analytics script (because why would they execute it and waste their CPU cycles on that?). And yes, you can't trust the exact numbers (because adblockers, etc) but you can see the trends:
Page A has 1000 visitors per day. Page B has 10 visitors per day. We can conclude that A is more popular than B (why that is another question).
Or Page A had 100 visitors on average last month and now it has 1000 visitors on average. We can conclude it got more popular. Etc.
Do you need that for your personal blog? Probably not. Do you need that on your e-commerce shop to verify wether you 1 million dollar ad spend makes a difference or not? Probably.
Even for personal websites, relying solely on JS can compromise security. We require precise data, and logs prove more dependable than JS, especially with the increasing number of tools tampering with JS data.
We should steer clear of the trap of exclusively focusing on the count of human visitors.
I can provide you a very simple example. You have a blog, with articles. On a multi-thousand word article, you know that traffic that spent <30 seconds on it are either bots or people that didn't read through. If that's most of your traffic, your articles aren't very good or your introductions suck. If almost all mobile traffic is like that, your site probably looks bad on small screens.
You get the point, I hope. Access logs are useless for this kind of basic information.
Another very good example - there was a blog from someone involved in the UK GDS initiative, that described the case of a woman sitting with a handheld console in the waiting room of a government office. Initially you think she's just playing, but peeking over her shoulder, you see she's filling an application for unemployment. The browser on the handheld is horribly outdated, but she probably doesn't have another choice. Therefore knowing your audience, and adapting to it is crucial. From them:
> people now access GOV.UK in many different ways - 16,500 visits came from games consoles in the last month (Xboxes/PlayStations/Nintendos) - including 65 sessions from a handheld Nintendo 3DS (this is in 2015 https://gds.blog.gov.uk/2015/11/20/2-billion-and-counting/)
It entirely depends on what your website is doing if you need analytics or not. But a lot of orgs and people actually do, and can and should make use of them.
JS analytics face an escalating risk of inaccuracies due to the myriad ways data can be manipulated, resulting in the generation of unreliable events from JavaScript endpoints. Keeping up with the industry reveals an emerging trend of blockers using AI-driven detection, diminishing the relevance of JavaScript analytics in such scenarios.
While JS analytics tools might be of more interest to the marketing team, they are not as crucial for the devops team.
Google Search Console is also widely inaccurate in the other direction.
I ended up just implementing a simple hit counter[0] which was fine for what I wanted.
JavaScript analytics are increasingly prone to inaccuracies due to numerous methods available for manipulating data, leading to the generation of inaccurate events from JavaScript endpoints. Staying current in the field reveals a growing trend of blockers employing AI-driven detection, rendering JavaScript analytics less relevant in these cases.
The quotes are very telling:
http://nomad.uk.net/articles/why-gos-design-is-a-disservice-...