Sunday, September 1, 2013

Dropping Support for MSIE 6, 7 and 8

I'm just in the process of redesigning members.wundercounter.com and I've made the decision to go with Bootstrap v3.0.0  This means the site will be mobile friendly right from the start, look better and be easier for me to develop and maintain.  That's the good news.  The bad news (for a very small number of you) will be that anything under Microsoft Internet Explorer 9 (ie MSIE 6, 7 and 8) will no longer be supported.  I currently have some hacks in place to support these older browsers but the browsers are becoming less popular with every passing day and supporting them would mean holding everyone else back.

If you're still on an older version of MSIE, please upgrade when you can or, even better, download a more standards-compliant browser like Google Chrome or Firefox.  You'll thank me!

Friday, August 23, 2013

New Hardware

You may have noticed that the reporting has become a bit faster over the last couple of months.  I've moved members.wundercounter.com to brand new hardware.  I've quadrupled the RAM from 8 to 32 GB and the CPU is significantly faster.  I've also compressed the assets (CSS and JavaScript) to improve the page load speeds.

Thursday, August 22, 2013

World Maps are Back

World maps are now back on your dashboard page (if you're not viewing on a mobile device).  They're generated daily, so they'll be an accurate reflection of where your traffic is coming from.  You can click on the map image to get a higher resolution (bigger) image to view.

Wednesday, August 21, 2013

Improved Browser and Robot Identification

This past week I've upgraded the logic used to identify browsers and operating systems.  You should find more information in your log reports as well as more robots which are identified.  If you find missing or incorrect information, please let me know.

The WunderCounter is based heavily on open source software and the logic behind the browser identification is freely available here.

Thursday, August 15, 2013

Browser, Operating System and Device Icons

As of this evening, I've added some icons to the daily and page reports.  They cover popular browsers, operating systems as well as handheld devices (iOS and Android).  I've also switched to a more up to date browser parsing library.  I'll be checking the logs over the next little while and tweaking the icons and display values, but I also welcome any feedback on the look and accuracy of the new information.  Please feel free to contact me with any issues you may find, even if you think they're unimportant.  Every report (good or bad) is helpful.

Wednesday, March 6, 2013

Database Server Crash (2013-03-05)

Earlier today the master database server crashed.  I don't know why it did, but when it came back online it took several hours to recover.  The slave server remained online during this time and is in good health.

I've learned a few things from this experience:


  • I need to prune a number of tables in the database as this could greatly reduce the amount of data being stored and replicated.
  • You can disable Debian's default of checking all tables on MySQL restart.  When tables have many millions of rows, even a fast table check can create a bottleneck which prevents new rows from being inserted into these tables and then ties up available database connections etc.
  • I need to consider upgrading the database hardware.
So, things are back to normal for now.  There were some outages this evening (March 5), but they weren't extreme and a lot of data continued to be tracked in the meantime.  This kind of crash hasn't happened in probably the last 3 years, so it took me by surprise, but at least I'm not up all night trying to recover from a disaster.

I apologize for the downtime.  I hate it at least as much as you do.  Having said that, the WunderCounter's uptime is actually very, very good in general.  There are very few outages and I generally just trust that it's going to be available, since it has historically performed so solidly.  However, I'll be implementing the lessons learned from today so that I'll be able to minimize downtime even more going forward.