Import analytics data from Piwik to Matomo on new server - matomo

Piwik: 2.11.2
Matomo: 3.14.1
Currently I am using Piwik for tracking visitor analytics for over 100 websites and I am planning to switch to a newer Matomo version on a different server.
I would like to take the analytics data from Piwik and import it into Matomo. There doesn't seem to be much information about this type of move. In my search I have found somewhat similar questions:
https://forum.matomo.org/t/importing-data-from-piwik-1-11-1-to-matomo-3-3-0/27209
Is it possible to import the data to the new instance without first upgrading Piwik?
Before I start the process of importing the DB, has anyone made this type of move before and is there anything in particular that needs to be done?

Related

Connecting React app to Sharepoint to list documents?

I have a React app for clients to access. I also have a SharePoint where I store my documents for each client. I would like the ability to present my docs based on each client within the app(read only). I am stuck on how to get started though. I can only find videos about web parts.
The docs seem to have options but I am not skilled enough as a developer to navigate them to understand what to use.
Should I be connecting to SharePoint using PnPjs?
https://learn.microsoft.com/en-us/sharepoint/dev/spfx/connect-to-sharepoint
Should I be connecting to SharePoint using the JavaScript Object Model (JSOM)?
https://learn.microsoft.com/en-us/sharepoint/dev/spfx/web-parts/guidance/connect-to-sharepoint-using-jsom
Is there something else I am missing here?
Additional info:
I also plan to scale this to use Azure SQL on a Azure VM. So don't know if all aspects are intertwined somewhere. https://learn.microsoft.com/en-us/azure/azure-sql/database/connect-query-nodejs?view=azuresql&tabs=windows

React Native firebase analytics app install tracking

For Example, i am using react-native-firebase library.
I want to grow my app install and i create a campaign.
The question is how can i know my app is installed by clicking ads or my app is downloaded directly on play store.
Simply i want to know where was my app downloaded from. I do implement firebase analytics configuration.
It seems like you could follow the advice given in this question: https://stackoverflow.com/a/47893179/4147687
Essentially, if all you want is simply a way to track how your app was installed, you can simply pass utm parameters along with your URL.
For example:
https://link-to-my-app.com/?utm_source=business_card&utm_medium=email&utm_campaign=sign_up_offer
Google Play has it's own URL builder to make this step easier here. If you are not using any specific ad network just set it as "Custom".
Firebase will automatically scrape the source, campaign and medium parameters there and present them to you in the first_open conversion event. Documentation for how this works is here.
The easiest way to do this is by using this npm package
https://www.npmjs.com/package/react-native-install-referrer
You should invoke the API only once during the first execution after install.
You can do that using AsyncStorage to check if its freshly installed or not and then you can logEvent based on that UTM url and track the users
After creating the event you can segregate users by creating Audiences in the firebase console.

Tips on approaching a flutter app which uses website data and features

I am new to app development and I am thinking about creating an app which will store all the anime that you are currently watching or have watched in the past. The purpose of this app is to store your progress of an anime/manga so that if you forget which chapter you were on the last time you watched/read the anime or manga.
My plan is to connect this app to myanimelist website and use its feature on my app to find an anime. Then if the user adds the anime to his watch-list then it will store the important data e.g., name, description, author, Image.
I am totally new to app development and I have to create an app for the final year project. As on how to start the app or the resources required I am at loss.
The main topic of my concern is on how I should handle the use of website data or the connection to the database. Is something like using SQL queries? Which database should I use to store the data on local device?
Any help is appreciated.
Your questions
how I should handle the use of website data or the connection to the database.
if You have an API that you are using for your website, then you can use that API to fetch data in your flutter app.In case your don't have an API you have to create one for your app.
Which database should I use to store the data on the local device?
For storing data to the local device you can use sqflite package for flutter to store data. Using sqflite you can write simple SQL queries to fetch or store data in the
database.
Ask if you have any problems.

Google Cloud Datastore and reports/administration

I'm quite new to Google App Engine and it's cloud Datastore which is used for storing the backend's data by default. As far as I realized you can only view it's content within the developer console and you can create or edit entities there.
But is there any external tool from which you can connect to your datastore to create reports or administer the data? What is your experience?
In fact yes it's true you can only see data's from the admin console.
If you wish to see your data's in Google Drive Table and make a report you can, but for that you need to create a connector to your sheet (I already made one). It's exactly the same if you need update or import data's to your datastore.
I use this Technic to upload or refresh products on my e-shop GAE app.
In general if I need to see a report, I design a specific web page for that and I protect theme via a login / password. To see a well formatted report you can use jquery library or use Google Charts

Web Analytics & Stats

We want to add tracking statistics to a web application we are building but are pretty unsure of how to go about it. (i.e. clicks, pageviews, unique visits etc)
Does anyone have any articles on the best way to go about incorporating tracking data into an application ? i.e. javascript tracking or IIS etc ?
We want to add tracking in as a ASP.NET MVC module - but we are unsure as to the best way to actually get the data and essentially 'track' this information ?
If anyone could help out - much appreciated.
Edit: just to be clear, we want to do this in-house and present the stats to our users as an additional fee module?
You can turn on the logging for IIS and then use the SQL Server Report Server Pack for IIS. It comes with many canned reports for your sites stats and then you could take it from there with your own custom reports.
You could also just use log parser to get the stats into a SQL Server DB and then you could use SQL from their to analyse and roll your own app.
Either way, you could modularize this and sell it as an add-on to your customer base.
You could use Piwik, you just need PHP version 5.1.3 or greater and MySQL version 4.1 or greater. As they say in their website, "Piwik aims to be an open source alternative to Google Analytics."
They have a demo on the official website so you can see if it's what you're looking for.
Google analytics is a popular service. You just insert a bit of javascript on every page that contains your sites name and Google tracks the data and provides all the report on a handy web based dashboard.
It's not an ASP.net MVC module like what you mentioned, but it will certain track stats for you and will be a lot simpler to set up than trying to code or integrate anything yourselves.
I'd look at analytics to begin with and only branch out to something more complex if it doesn't meet your requirements.
klabranche provided a holistic answer in terms of using logs of web server. I think using web server log is a a great way to analyse data of your web application.
That being said, depend on your web application and the scope of your analytics, just relay on web server log is not a good way to.
As you may know, web log does not record users behaviors like clicking certain tabs which may not trigger a web server request. Obviously your web log has no idea whether users clicked that tab or not, this may hurt your analyse.
Another you need to know is browser cache, this may create another black hole in your data.
RECAP
If you want to do a holistic analytics, you need to use two approaches, one is JavaScrip tag, another one is web log. Since both of them have shortages, combining them together will give you a complete picture.
Hope this helps

Resources