Tracelytics: Google Dapper for the Rest of Us
tracelytics.com
tracelytics.com
I'd suggest making pricing prominent, especially since folks will compare you to New Relic anyway. Are you "New Relic, but with more features, that costs 10x more" or "New Relic, but with fewer features, that costs half as much" or something else?
Tracelytics, on the other hand, tracks across applications and down to the individual machine serving each part of the request. This means that I can track each individual request through multiple applications/services as the request traverses different physical machines.
This has become important as our infrastructure has grown to the point where we might have 20-30 machines in a particular layer. When an app server, or network interface, or something else unforeseen goes wonky, it is extremely challenging to determine specifically what is causing the problem and where it is. With Tracelyitics, if I go into my dashboard and see that the 500 errors are all coming from a single physical server, I can take that machine out of the loop, remove the problem from the production environment, and then troubleshoot the bad box.
For now I'm just running the NewRelic free version on two of the slices.
Tracelytics has two big features that New Relic doesn't have:
- Support for service oriented architectures. We'll show you what called what, and how the caller affects the callee's performance.
- More flexible filtering throughout the app. We let you filter on URLs, controllers/actions, custom-defined apps, even memcache keys or SQL queries, and carry these filters around with you go from page to page. It really helps isolate a problem with, for instance, a memcache call that only originates from one URL.
Now, obviously I'm biased, but I think that these two can make a big difference, especially when you're trying to track down a performance problem for the first time.
P.S. I posted a related question on Quora recently, maybe you'd like to weight in: http://www.quora.com/How-is-Tracelytics-better-than-New-Reli...
In the case of vanilla PHP, the concept of controller and action is less well-defined, so we provide a function that you can use to log controller/action information you have in whatever routing class/function/layer you have.
In other words, try to explain to some manager that the development & server administration needs some special tools for monitoring. They might think they need to hire someone else to fix that weird issue when the load spikes.
So, this means there's only one option: having an open source stack to do it and set it up in-house.
You should really provide a live-demo or at least a screencast so potential buyers can get a remote idea of what they're looking at here.
- A set of add-on packages in the format of choice for the component we're instrumenting -- Ruby gems, Apache modules, etc. Full support list is here: http://www.tracelytics.com/features/#!/supported-platforms
- A daemon that runs on each machine that is tracing, which collects the partial traces and ships them back to our servers.
We're working on a more complete try-before-you-install experience. If you'd like, shoot me an email (my username at traceltyics) and I'll keep you updated.
(I briefly lived with Spiros, and once got sucked punched outside of Chris's house.)
Good luck.
Does anything like this exist?
It's a pity that there's nothing open source like the Tracelytics SaaS out there.
While it may be OK for a large company to build a full stack, not everyone can afford to build a full stack (write the web app, the monitoring suite, deployment, etc).
You can also use it as a resume.