Ayende @ Rahien

It's a girl

What is next for the profilers?

We have been working on the profilers (NHibernate Profiler, Entity Framework Profiler, Linq to SQL Profiler, LLBLGen Profiler and Hibernate Profiler) for close to three years now. And we have been running always as 1.x, so we didn’t have a major release (although we have continual releases, we currently have close to 900 drops of the 1.x version).

The question now becomes, what is going to happen in the next version of the profiler?

  • Production Profiling, the ability to setup your application so that you can connect to your production application and see what is going on right now.
  • Error Analysis, the ability to provide you with additional insight and common solution to recurring problems.
  • Global Query Analysis, the ability to take all of your queries, look at their query plans and show your potential issues.

Those are the big ones, we have a few others, and a surprise in store Smile

What would you want to see in the next version of the profiler?

Comments

Dan Plaskon
06/02/2011 09:49 AM by
Dan Plaskon

For me, production profiling is easily the killer feature that we've been waiting for.

Better support for remote profiling would be great too..especially if it could be done via. a hosted silverlight application, eliminating the need to have the profiler installed locally and to send all of the profiling information over the wire (not sure about the feasibility of that, though).

NC
06/02/2011 10:11 AM by
NC

You've already implemented the few really minor thing's I've emailed you.

But something around remote debugging would be great, but locked down to a specific IP or something. So I can only see querying done for the requests I'm making, and it doesn't capture anything else.

I think the interface for showing query plans needs an overhaul, I still use SQL Server Management Studio for looking at query plans because it just feels too clunky in NHProf.

Also something to exclude sessions from certain URL's, for some web pages with AJAX requests I end up with a few sessions when all I want to profile is the initial page load or a single AJAX request.

Otherwise, I've gone from hating NHProf because it was expensive program that didn't justify it's cost (in my opinion) when initially released. To a bloody useful program that I now use on a daily basis. :)

Ayende Rahien
06/02/2011 10:14 AM by
Ayende Rahien

NC, Regarding the ability to exclude sessions, have you checked out the Filter feature?

Krzysztof Kozmic
06/02/2011 10:20 AM by
Krzysztof Kozmic

As always - validation of the mapping and configuration and suggestions regarding how they could be optimised.

NC
06/02/2011 10:28 AM by
NC

Clearly you're one step ahead of me, feature works perfectly, I had fiddled with it a long time ago in the trial but didn't take much notice. But it does exactly what I need it to do, and more!

Remco Ros
06/02/2011 11:28 AM by
Remco Ros

What would be nice is to be able to connect the profiler to multiple running applications.

This would allow analysis of front and back-end apps in one go (web -> different connected services, like servicebus hosts).

acl
06/02/2011 11:30 AM by
acl

Better 2nd-level cache analysis and optimisations (e.g. what causes evicts)

Joe
06/02/2011 12:00 PM by
Joe

RavenDB profiler maybe?

Colin Gemmell
06/02/2011 03:46 PM by
Colin Gemmell

Any chance of ruby ActiveRecord profiling. I really do miss NHib prof since i left the world of .net

Ayende Rahien
06/02/2011 04:48 PM by
Ayende Rahien

Colin, Active Record? As in Ruby? Or as in Castle Active Record?

Jason
06/02/2011 05:41 PM by
Jason

I'd like you to revisit the idea of an actual uber-prof. It'd be nice to have a profiler that would work with any ORM technology

Nick Berardi
06/02/2011 05:50 PM by
Nick Berardi

What I would love to see is a generic DB connection handler to support all the Micro-ORM's out there. I know that it won't be as un-obtrusive as the current profiler support, but it would be great new product line that I would buy.

Igor Tamashchuk
06/02/2011 06:33 PM by
Igor Tamashchuk

What about events stream profiling? Kind of CQRS Profiler or so

Bjarte Skogøy
06/02/2011 07:37 PM by
Bjarte Skogøy

Production profiling would be wonderful!

Richard Wilde
06/03/2011 07:56 AM by
Richard Wilde

Production profiling would be fabulous however I would like to chirp in and say this must work in medium trust scenarios.

Just my two cents

Simon Bartlett
06/03/2011 09:58 AM by
Simon Bartlett

Ayende, I think Colin meant Ruby, as he also said he's left the .NET world.

Simon Bartlett
06/03/2011 10:05 AM by
Simon Bartlett

Joe, I think if you need a RavenDB profiler, you're doing something seriously wrong.

Joe
06/03/2011 12:41 PM by
Joe

@Simon That's why I would want it :-D

Johan
06/04/2011 05:34 AM by
Johan

Production profiling! And perhaps a tad of error analysis aswell..

Rafal
06/04/2011 06:56 AM by
Rafal

Raw sql profiler for all legacy code that uses less popular ORMs or no ORM at all.

Jamie Ide
06/04/2011 01:37 PM by
Jamie Ide
  • The ability to execute ad-hoc queries. I want to be able to type in a query using HQL, Criteria, or QueryOver, and have NHProf execute and profile it.
  • Improve the layout of insert statements, it's difficult to match up parameters and values.
  • The ability to display the statement issued to the server instead of the parsed SQL. With SQL Server, there may be a vast performance difference between the parsed SQL as shown in NHProf and the SQL wrapped in sp_executesql that is actually sent to the server.
Ayende Rahien
06/05/2011 07:46 AM by
Ayende Rahien

Rafal, Have you checked out our CustomReporting option?

Ayende Rahien
06/05/2011 07:48 AM by
Ayende Rahien

Jamie, * You might want to look at NHibernate Query Analyzer. What you request is something that we aren't likely to support inside the profiler. * I would like to see what you mean by improving insert layout. * As for the last one, we aren't likely to support it, it requires a LOT of information about the actual DB engine, and at that level, you are probably better off using the database own mechanisms, rather than a higher level tool like the profiler

Daniel
06/08/2011 11:01 AM by
Daniel

Error Analysis and Global Query Analysis would really make me buy nhprof.

Comments have been closed on this topic.