Tracelytics: Google Dapper for the Rest of Us(tracelytics.com)
tracelytics.com
Tracelytics: Google Dapper for the Rest of Us
http://www.tracelytics.com/
9 comments
Definitely missing the pricing information. I'm looking to bake in analytics in a new app that I'm working on…this looks good, but I can't even take the time to try it unless I know it's going to be cost-effective.
We are an early customer of Tracelytics. We are also a happy New Relic customer. They are both great tools and not necessarily an "either or" decision. New Relic gives great info about what is slow from a single app perspective...being able to trace down to the layer where the issue is.
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.
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.
I've had good luck with New Relic* although on first glance I'm not sure if it offers as comprehensive a monitoring service as this system.
* http://newrelic.com/features/performance-analytics
* http://newrelic.com/features/performance-analytics
(Disclaimer: I'm one of the engineers at Tracelytics)
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.
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.
I can't use anything like this due to NDAs and due to the fact that the management will not approve the payment of such a service.
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.
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.
Do you guys have a live-demo someplace? The screenshots are interesting, but having a live view would really help me understand why we should move away from NewRelic.
We don't have one publicly available right now, but if you shoot me an email (my username at tracelytics), I can give you access to our demo.
How exactly can you tell exact controllers/actions in the code? Do we need to include some custom code in our PHP (in this case) code for that to work? We use NewRelic right now, and all that the "code performance" part of it shows is index.php, which is the dispatcher of our framework. Obviously, not very helpful.
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...
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 frameworks we instrument, we grab that information for you at the appropriate point.
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 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.
I love NewRelic, it just costs too much per server. We run a bunch of slices over at Slicehost and it would costs over a thousand dollars a month to monitor them all.
For now I'm just running the NewRelic free version on two of the slices.
For now I'm just running the NewRelic free version on two of the slices.
Maybe you find this offer interesting, expires in a few days:
http://www.appsumo.com/new-relic-web-app-monitor-promo/
The screenshots and narrative don't provide nearly enough information to warrant a registration. There's not even a price-tag, will this cost $10 a month or $1000? How does it hook into my infrastructure, do you provide plugins (for which platforms?), is it a daemon, kernel modules, SNMP?
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.
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.
In response to your second question, we provides two things:
- 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.
- 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.
Best of luck guys!
(I briefly lived with Spiros, and once got sucked punched outside of Chris's house.)
(I briefly lived with Spiros, and once got sucked punched outside of Chris's house.)
Is there an API ? We would want to import this information into our own system as we wouldn't want to use multiple systems; same for our clients.
Thanks for the question. At the moment we don't expose an API to our customers though it is in the works. We've definitely heard this request from enough people to make it real.
Looks nifty. FYI- Your website is kinda goofy on an iPad. Your divs were moving all over the place. (safari, iOS5, iPad 1)
Good luck.
Good luck.
Sooooo tiny on an iPad. Looks like a postage stamp when it first comes up. You have to zoom-in to do anything.
An open source piece of software to do this would be greatly appreciated.
Does anything like this exist?
Does anything like this exist?
Both Dapper and Tracelytics borrow ideas from the X-Trace project, which has a bit of source available, though not much.
http://x-trace.net/wiki/doku.php
http://x-trace.net/wiki/doku.php
My masters' thesis involves X-Trace, along with pieces for tracing common pieces of the web stack. I'm not ready to open-source it yet, but it's a definite possibility. I've published a preview of it at ICPE 2011, http://dl.acm.org/citation.cfm?id=1958746.1958783&coll=D...
If you do decide to open source it, you can be sure it will be appreciated.
You can also use it as a resume.
You can also use it as a resume.
Thanks for the reply.
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).
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).
So do you mean the project is incomplete in its current form so it needs works to be done to enable its full potential?
How is it like Dapper when it doesn't support Java? :)
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?