Reputation: 1319
We have a Client/Server Application and I'd like to profile both of them to create Metrics like "The average Login Time was xx ms with xxx being max, x being min and a total of xx Logins since yyyy" and so on.
I know the Equatec and ANTS profilers (which I both like a lot). But I think they dont provide the functionality I'd need.
Of course, I could write the necessary functions myself, but I think as ANTS or Equatec can do that on their own pretty good, there must be some way to use that functionality.
What I need:
Collect as much data about function calls as possible, while still maintaining a reasonable performance
Scaling would be good like in (de)selecting code paths I do not want to monitor
Saving all collected Data in a Database, either a local one or a remote SQL DB
If the tool could create graphs like ANTS on its own, that would be cool, but raw Data would suffice
Code is written in C# 3.5 (Server and Client<->Server communications) and C++ (Client GUI). It would be good to monitor the C++ code as well (C# is embedded as COM Objects), but for the time being, monitoring C# would be enough
This does not have to come for free, but having a trial for testing is a must.
Upvotes: 2
Views: 366
Reputation: 2964
Here are a few options that I could think of right now:
Edit: How could I forget this little gem!
MiniProfiler can be wrapped around your code like this:
var profiler = MiniProfiler.Current; // it's ok if this is null
using (profiler.Step("Doing complex stuff")){
using (profiler.Step("Step A"))
{ // something more interesting here
Thread.Sleep(100);
}
using (profiler.Step("Step B"))
{ // and here
Thread.Sleep(250);
}
}
Upvotes: 0
Reputation: 7411
Profilers are more code/function centric and have a large performance impact. Plus it will be impossible to roll out the profiler with your code to your users.
I think you should look at using a logging framework like log4net for your code and then configure the logging to save the results into a database which you can use to analyse the performance figures.
Upvotes: 1