I am managing an administrative Rails 3.2 website for different clients with even more users. Currently we are still running on a single server through Passenger.
We started out as a small webapp with 2-3 clients and have slowly grown to 20 clients with about 100 users and are still growing.
Among other things, users mainly make planning schedules, create and send invoices and view and print reports over this data.
Now, since most users are pretty low-tech they will not approach us with (constructive) technical feedback. I would like to stay ahead of the curve and find out from usage statistics where the bottlenecks are so I can solve them and provide a smooth user experience while we are slowly growing (and figure out ahead of time when to expand in parallel to cope with the load)
What I would like is a solution on the production environment where I not only can track basic usage such that for example Google Analytics provides, but also need some kind of context. I want to be able to compare the behavior of 1 user to another, or all users of a certain client to those of another.
Preferably, I also want to include technical details such as number of queries, the time it took and the Rails overhead.
Most solutions I have found provide no options for the Rails context tracking, such as Google Analytics, or are meant only for targetted debugging such as most Rails profiler / benchmark tools and not for continued production usage.
The fact that I was able to find so little existing solutions for this problem makes me believe that I am looking in the wrong direction or there is something structurally wrong with what I am trying to achieve.
To summarize:
- Private Rails 3.2 Web application behind login.
- Need contextualized tracking of usage (clients and users)
- Technical profiling as well