I stumbled upon an interesting and useful analytics tool for our WordPress installation today from Microsoft called Visual Studio Application Insights. It took all of two minutes to configure for WordPress, and many folks may be able to use the free tier to gain new insights about the performance of their application.

Application Insights is a cloud-based analytics tool hosted on Azure. It allows both client and server-side monitoring of usage and performance. It also has the ability to setup alerts on performance and availability issues.

Track server response time, browser page load time and server requests

Application Insights is able to monitor ASP.NET, J2EE and other web apps hosted anywhere, whether on Azure or not. (We are currently not hosted on Azure.) It can also be used to track usage and performance statistics for Android, iOS, OSX and Windows apps.

The pleasant surprise today was to find their WordPress plugin. The plugin uses the Application Insights PHP SDK to send site data to Azure. It also deploys an end-user script to help with page speed and rendering measurements, or to watch for client-side errors.

Configuring Application Insights for WordPress was super easy.

  1. You need to have an account on Azure. Here’s a link to setup a free trial on Azure. There is no cost for an Azure account.
  2. Once you’re logged in, go to the Azure Portal. Click the “New” button and search for and choose “Application Insights”. Click Create.
  3. For application type, choose “Other”. You’ll also need to place it in a Resource Group.
  4. Once your Application Insights account is created, simply click on it and choose Settings > Properties. Copy the Instrumentation Key.
  5. Install and activate the WordPress plugin on your WordPress site. Go to Settings > Application Insights in your WordPress dashboard and enter your Instrumentation Key that you obtained above.
  6. Sit back and watch your news stats in the Azure portal!

Application Insights is gathering a ton of interesting statistics. Some of this data is similar to tools like Google Analytics, but some of it is more granular and helpful to web developers. It is definitely superior to the data that we get from our current web host, WPEngine. I’m guessing that is also superior to analytics data provided by many other web hosting companies.

Tracking page delivery and load times from both the client and server is very useful to monitor real-world performance of your site.

Track browser request and rendering times, along with pageviews and browser exception errors.

Interestingly, Application Insights also tracks browser exceptions (errors) generated by client browsers. You can drill down on errors to see which bits of your site’s javascript is causing trouble on users’ browsers.

Drill down into browser exception error details.
Drill down into browser exception error details.

It is also easy to monitor sessions, users and pageviews, along with getting details about the OS that they are running on.

Track sessions, users and pageviews and drill down by OS
Track sessions, users and pageviews and drill down by OS

Application Insights also gives you a look at the geographic locations of your site’s visitors.

Usage by country
Users, sessions and pageview tracking

The best part of this service is that you can track unlimited session in their free pricing tier. It allows unlimited session data, but restricts the free tier to 5 million other data points, 7 days of raw data and 13 months of aggregated data. Certainly a generous free quota that may work for many sites. Modestly priced paid tiers allow you to expand these limits for $24.50 or $99.50/month.

I’ll be setting up some of their alerts to watch for performance issues on the site too. Very useful. WordPress site admins should check it out, and Microsoft should tell more people that this tool is out there.


Latest Developer Blog Articles

Job Listings on GeekWork

Find more jobs on GeekWork. Employers, post a job here.