Yeah @kurulumu-Net you can change port in config.json in one of the NodeBBs and change to the same port in the proxy-pass part of the corresponding nginx config.
Default port is 4567, one will need to be changed.
Hi there,
Is there any other way to implement piwik other then adding it to the header. I've done it in my setup and it seems to be working but when I compare the internal dashboard with piwik the internal dashboard shows about approx three times more unique visits and page views.
Is there parts of nodebb where the header isn't loaded or other oddity that could explain this.
@hmj That discrepancy can likely be explained by Piwik only tracking cold page loads, whereas NodeBB tracks page transitions as well (that is, going between pages).
@rod I see there is code to fire Piwik when a page transition finishes:
$(window).on('action:ajaxify.contentLoaded', function(ev, data) {
firePiwik(data);
});
Any chance you could test this to ensure that it is actually working?
@julian said in How To: Piwik and NodeBB:
@hmj That discrepancy can likely be explained by Piwik only tracking cold page loads, whereas NodeBB tracks page transitions as well (that is, going between pages).
What do you mean by that? In my Piwik I see visitors moving between topics
@rod I see there is code to fire Piwik when a page transition finishes:
$(window).on('action:ajaxify.contentLoaded', function(ev, data) { firePiwik(data); });
Any chance you could test this to ensure that it is actually working?
Yes, I believe this is working. Suggestion on how to test this?
@pichalite I am quite sure that Piwik ignores them, installed a plugin to count bots now and I cannot see that it accounts for around 4k unique visits and at least 40k pageviews per day that are not counted in Piwik. I added GA tracking yesterday as well to compare to the two and GA seems to be in line with Piwik.
So I'm a bit baffled by the amount of traffic Nodebb is showing in it's backend.
@hmj What other plugins do you have installed? Could be one of them are hammering some routes
@julian Not sure here is a list of the plugins we are using.
Activated plugins:
nodebb-plugin-composer-default
nodebb-plugin-dbsearch
nodebb-plugin-emoji-extended
nodebb-plugin-emoji-one
nodebb-plugin-markdown
nodebb-plugin-mentions
nodebb-plugin-spam-be-gone
nodebb-plugin-sso-oauth
nodebb-widget-essentials
So I've added GA to the mix. I did that with adding it in the same custom header as to validate that my Piwik installation is not on the fritz. Comparing the two I see a little fewer unique visits between the two in piwik but almost exactly the same amount of pageviews.
Nodebb is still off by a factor of three in unique visits and around a factor of three to ten in pageviews.
Did this piwik code break for anyone else on the 1.6 upgrade?
Index 86: $(window).on('action:ajaxify.contentLoaded', function(ev, data) {
Index 89: })();
@hmj v1.6.1? or v1.6.0... it may be that the piwik plugin needs updating.
Edit: Actually, doesn't seem like there is a piwik plugin... are you just putting it in the custom HTML page?
@julian Yeah that code at top is put into Appearance -> Custom HTML & CSS -> Custom Header. That had worked fine until the last upgrade.
@hmj Are you on the develop
branch? The code should still work fine in master
.
Also can you please paste the code here?
@julian We are on 1.6.0 and not Develop.
Our code is almost a carbon copy of the one above in the first post.
<!-- Piwik -->
<script type="text/javascript">
var _paq = _paq || [];
(function () {
var u = "https://our.piwik.com/";
function firePiwik (data) {
if (app && app.user && app.user.uid > 0) {
_paq.push(['setUserId', app.user.uid.toString()]);
_paq.push(['setCustomVariable', 1, "appUserUsername", app.user.username, "visit"]);
}
_paq.push(['setDocumentTitle', document.title]);
_paq.push(['setCustomUrl', location.href]);
_paq.push(['enableHeartBeatTimer']);
_paq.push(['appendToTrackingUrl', 'bots=1']);
if (data.tpl === 'search') {
_paq.push(['trackSiteSearch', ajaxify.data.search_query,, ajaxify.data.matchCount]);
} else {
_paq.push(['trackPageView']);
}
_paq.push(['enableLinkTracking']);
_paq.push(['setTrackerUrl', u+'stats/piwik.php']);
_paq.push(['setSiteId', 1]);
}
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'stats/piwik.js'; s.parentNode.insertBefore(g,s);
$(window).on('action:ajaxify.contentLoaded', function(ev, data) {
firePiwik(data);
});
})();
</script>
<noscript><p><img src="https://our.piwik.com/stats/piwik.php?idsite=1&rec=1&bots=1" style="border:0;" alt="" /></p></noscript>
<!-- End Piwik Code -->
@hmj can you provide the result of git rev-parse HEAD
? I have a feeling you're on a commit with a feature we've temporarily rolled back
@julian said in How To: Piwik and NodeBB:
git rev-parse HEAD
02370b30d934006fe1db8575cccf6a42ac71431e
Awesome , thanks for the info..
@julian Resurrecting an old thread, it is still relevant though.
Since upgrading NodeBB from v1.4.5
to v1.12.1
my Piwik analytics code no longer works. It looks like @hmj had this same problem when he upgraded to v.1.6.0
.
Does anyone have suggestions on what may have changed such that this doesn't seem to work any longer?
$(window).on('action:ajaxify.contentLoaded', function(ev, data) {
firePiwik(data);
});
Thank you.