What's happening on your site right now?

Find out with GoSquared. Real-time web analytics.


Try GoSquared Free.

Archive for Code

Resolve ELB connectivity issues

Geoff Wagstaff / August 1, 2011

Dev with Geoff - Development time with our CTO Geoff Wagstaff

We’ve recently been running into a recurring issue with AWS’ Elastic Load Balancing service. The problem manifests itself in vastly increased latency or eventual dropout of requests against the load balancer.

We verified the health of our instances in each availability zone, and concluded that it was not a problem at the instance level. Second, we confirmed that our DNS queries were being routed to the ELB correctly. They were. So the issue was at the ELB level.

As it turns out, there appears to have been/still is a bug where ELB will suddenly decide that there are no available instances in a particular availability zone, or at least it will have trouble connecting to instances in that particular zone. Even if the instances are perfectly fine, and pass all health checks.

The solution was to try to identify the suspect zone, and de-register that zone and all of its instances from the ELB. Once re-registering the zone & instances completed, the ELB was back up to full functionality again.

Hope this helps next time you run into any ELB issues!

P.S. We’re big fans of Amazon Web Services – if you haven’t already, check out our recent feature on the AWS Blog.

3.2 in detail – Shiny new GoSquared Live API (and a competition!)

Geoff Wagstaff / July 19, 2011

The all new GoSquared Live API. Adapt your site in real-time.

We’re often told that that our real-time data is analytical gold for the decision makers behind all kinds of online establishments; from personal portfolio sites right up to the busiest e-commerce enterprises. We pour all our passion, blood, sweat and tears into making our applications as useful, intuitive, and beautiful as possible, so you benefit from our continued efforts to make our data as insightful and actionable as possible.

But it gets better. We’ve opened the gates to our analytical gold mine, empowering developers with access to the same raw data that fuels our very own applications. With 3.2, we’ve announced the immediate availability of the new real-time GoSquared Live API.

Calling all developers!

We’re very excited about the possibilities. Using the API, you can write adaptive applications that display your sites’ traffic in any number of interesting ways. These could range from epic visualisations that boldly showcase your Über development talent, to adaptive modules on your website that respond to traffic changes in real-time. The best part is, it’s all platform and language agnostic, so you can use the languages and tools you love.

Head on over to the developer documentation to check out what this baby can do.

Read on for details about our competition – win $150 of analytics by playing with our new API!

Read the rest of this entry →

Facebook Like Button – Ignoring Duplicate Traffic

JT / May 25, 2011

Facebook Like Button - How to avoid duplicating your stats

We’ve noticed some odd things happening to some of our stats, and it’s been brought to our attention that some of you, our customers, are experiencing similar issues. The problem pertains to pages with Facebook’s “Like” button or any of their other social plugins.

Quietly duplicating requests.

Under certain circumstances, a page with a Like button can register one extra pageview for every button you have on the page. This is undesirable, because if you run a site with, say, ten like buttons on the homepage, you’ll see eleven pageviews for each and every time someone actually views the page, not one. Obviously this is going to completely throw off all your tracked stats and analytics. Not good.

Read the rest of this entry →

Panic Over! Node.JS Help Sheet is here.

James Gill / May 18, 2011

Node.JS Help Sheet from GoSquared

What’s this? A new GoSquared Help Sheet? Hell yeah!

We’re pleased to bring you a brand new GoSquared Help Sheet for your Node.JS needs.

What’s Node.JS?

If you’ve read this far, you probably already know, but for those intrigued, Node.JS is an evented I/O framework for the V8 JavaScript engine. It’s ideal for writing scalable network programs such as web servers.

We’ve been working on some exciting things with Node.JS, and we felt it was only fair to share our knowledge in the form of an easy-to-read Help Sheet.

Read the rest of this entry →

Memcache and persistence

Geoff Wagstaff / March 29, 2011

Develop with Geoff at GoSquared

There are a lot of new database systems popping up that can be interpreted by the newbie as “memcache, but with persistence”: MemcacheDB, Membase, redis, Project Voldemort etc. I’ve seen the term “persistent Memcache” being thrown around a lot, which is an oxymoron in itself, as the term “persistent” undermines the implied ephemeral nature of a “memory cache”. We must be careful not to mislead those impressionable by buzzwords into adopting the wrong technology for the wrong uses.

It’s not uncommon to hear the comparison “like a persistent version of memcache” being thrown about, and it is understandable why it is used. While brave new ground is being covered by these new DBMs, this simile acts as a straightforward introduction to these new technologies and how they work. If you’ve worked with web development or MySQL for any tangible amount of time, chances are you’ve had experience with Memcache and its simple key/value data model. So it’s a great technique to help tame these wild and mysterious new technologies so that we understand them better in terms of what we already know.

However, we must be careful not to let this comparison transcend the fundamental differences between these systems. I fear that many regard “persistent Memcache” as a drop-in replacement for the original Memcache so that they don’t need to worry about cache timeouts or its ephemeral nature. Whereas the important distinction to make here is that these systems are databases, and Memcache is a cache, and nothing else. For best performance, it is important that both are still used in a way that complements their design and intended usage. I am worried this likeness will foster poor data model design, as developers feel more secure with interchangeably using their caches as databases, and vice versa, adopting the wrong technologies and software design paradigms on this premise. Sure, many of these “NoSQL” persistent databases can be used as a cache, but to engineers building high performance systems, it is important to keep the distinction in mind to avoid unnecessary overheads.

Introducing Map View (beta)

James Gill / March 10, 2011

Map View - where are your site's visitors?

Today we’re releasing Map View (beta) into GoSquared’s Labs. Check it out.

What is Map View?

Map View is the same beautiful map that you will instantly recognise if you’ve been using GoSquared LiveStats. We’ve cut out everything else to leave just the map – allowing you to show off the locations of all your visitors to anyone you want without the worries of showing email addresses, user IDs and other personally identifiable information.

How does this fit in with my business?

Map View is ideal for large screens and projectors. We received a ton of feedback from customers who wanted to run just the map from LiveStats on a big screen in their office or their reception area. We also realised it’d be beneficial for everyone if we could offer Map View to those who wanted it, without the extra burden of all the extra information around visitors, pages, and referrers.

Do I need a GoSquared Account to try out Map View?

You sure will, if you don’t have one already. You can sign up for GoSquared from just $9.99 per month, or have a play on the free account right now.

Developers – Using AWS tags for Instance Identification

Geoff Wagstaff / February 28, 2011

Develop with Geoff at GoSquared

A few months ago, AWS introduced an extremely useful little feature to their consistently developing EC2 platform: Instance Tagging. Before tags, it was relatively tricky to define a clear instance nomenclature, forcing you to implement a vague approach using security groups if you wanted something close to the same functionality. Since there is also a full API surrounding tags, they can be put to work in many useful ways.

Naming instances

Besides attaching up to ten custom nuggets of arbitrary data to instances, tags can be extremely handy when it comes to naming your EC2 instances, and more importantly, using these names to differentiate between instances and their roles. For example, you have three instances. One holds your master database and website, the second is a slave database in replication, and the third is a staging/test server. You’ll want to make pretty damn sure that when you’re SSH’d into all three of your instances, the commands you send are received by the intended recipient server.
Read the rest of this entry →

Introducing LiveStats 3

James Gill / January 11, 2011

Introducing LiveStats 3

Today, we’re very excited to announce the latest version of GoSquared LiveStats – version 3.

We’ve rewritten LiveStats from the ground up to focus around seeing which content is popular on your site at a glance. The centre of the interface shows a list of all the pages people are viewing on your site. The left side shows where your traffic is coming from – what people are tweeting, which sites are linking to you, and what people are searching for.

Learn more about the great new features of LiveStats 3, and sign up now!

LiveStats 3 - see it in action

An Update to GoSquared Accounts and Settings

James Gill / December 9, 2010

Introducing GoSquared Settings - Manage your GoSquared Account easier, faster, better

Today we’re announcing two huge improvements to GoSquared. We’re introducing a new structure for user accounts and plans to make GoSquared more affordable, easier to join and simpler to upgrade. We’re also releasing an overhaul of the Site Manager application and renaming it Settings.

The new Settings app

Introducing a completely redesigned application for managing everything in your GoSquared Account, along with all the websites you’ve added to GoSquared.

Settings will look familiar if you’ve been using GoSquared for any period of time – it’s replacing what was previously known as Site Manager for managing the sites in your GoSquared Account. All the settings that were there before – editing of website name, URL, updating your site image preview, sharing options – are all still available.

Along with managing your websites, you can also edit your personal details, change your password, and upgrade your GoSquared Account (more on that shortly).

The new Settings - Upgrading and downgrading now easier than ever

Updates to GoSquared Accounts

The most notable change introduced with the Settings app is that there is a new option in the sidebar called “My Account” – head here to upgrade your GoSquared Account.

Until today, when you signed up for a plan (see plans and pricing), that plan would apply to a website on GoSquared. From now on, plans will apply to user accounts rather than to websites.

What does that mean? Before – if you signed up for a premium plan, that plan would only apply for one website, so even if you had 3 websites in your GoSquared account, you would only gain the increased pageview limit and additional features of the premium account for one website. We didn’t think that was fair – and a lot of people requested we change things so that the pageviews they were paying for could be shared across all sites in their account.

From today onwards when you sign up for a plan on GoSquared, the features and the number of pageviews on that plan will apply to all sites in your GoSquared account.

If you’re only on the free plan and you currently have multiple websites in your account then not too much will change except the pageview limit on the free plan – 10,000 pageviews monthly, will now be shared across all of your websites.

If you have any queries about the latest changes to GoSquared accounts, have a look at this support document.

Behind the scenes

We’ve improved the functionality of the Settings app to be easier to use, and even faster than before by utilising the latest in HTML5, CSS3, and jQuery goodness. You won’t have to reload the screen at all – everything refreshes immediately, and tabs switch as soon as they’re clicked without any waiting.

Settings is there to be quick and easy – people want to jump in, change a detail, and get back to looking at their stats. That’s why we designed the URL structure to allow you to bookmark any screen in Settings and return to it at a later date. It’s also why you can jump straight to Settings from the sign in screen by clicking the Settings icon. Small things, but hopefully they’ll save you some valuable time.

I don’t understand! Help me!

We’ve put together a support document outlining some of the top questions you may have regarding the changes to GoSquared accounts. Have a read of the support page, and if you still have questions please feel free to email us, tweet us, facebook us, or leave a comment on Get Satisfaction.

Still not using GoSquared for real-time web analytics? Sign up now

This has been a huge project behind the scenes for the whole team, and we hope you like the changes. It’s very easy to keep adding new features when building software, but this is one of those occasions where we dedicated considerable time to simplifying, clarifying, and improving a core part of our offering. We look forward to your feedback!

Enjoy,

James Gill, Geoff Wagstaff, James Taylor
A.K.A. The GoSquared Team

Speedy Sign In

James Gill / November 19, 2010

GoSquared Sign In - Works great on iPhone, iPad, and Desktop

A few days ago we released our new sign in screen. If you’re already a member of GoSquared you’ll probably have noticed it’s a whole lot better than what it replaces.

Try it on iPhone

There’s a few handy little things you may not have noticed, though. For example, if you’re on a desktop computer, or anything with a fairly large screen size, you’ll see the default sign in screen – with icons for each of our main apps, some handy links at the bottom of the screen, and of course the all important email and password fields. However, if you load the same page on your iPhone or any other small screen mobile device running a modern browser, you’ll get a specifically designed screen that cuts out everything you don’t need to see on a mobile device. That’s not all – we’ve gone an extra step and implemented an optimised design for when your mobile device in in landscape or portrait. We hope this will make it easier for people to keep up to date with the status of their site while on the go.

Responsive Web Design

For those web designers among you, we optimised for these different screen sizes by utilising some of the modern technologies available in CSS3. This is an increasingly popular method called “responsive” web design – pages adapt to suit the device they’re being shown on. There’s a great article about responsive web design on A List Apart.

Read the rest of this entry →