We have a knowledge based site where data is stored in a SharePoint list. We want to keep track of each logged in user and the resource they access while navigating Knowledge based site. I know SharePoint ootb provides us the web analytics to get some of the utilization data, but how can we create such report programtically in office 365 using app part. Any direction would be greatly appreciated.
According to your requirement, you can achieve this with the combination of Provider Hosted Application and Microsoft Management Activity API. This API gives you the detailed information about users along with SharePoint resources accessed details with the limitation of 7 days. When using provider hosted application you are able to maintain your own application outside the SharePoint. Handling of log details and authentication is pretty much easier in Provider Hosted Application when compared to SharePoint Hosted Application. In case, you like to select SharePoint Hosted Application, please note it allows only client side scripting languages to develop application.