Load Testing with Custom Performance Counters: Listing 1.
The DocumentManager class.
- By Benjamin Day
- 10/01/2012
public class DocumentManager
{
private OperationPerformanceCounterManager m_PerfMonCountersForCreateDocument;
public DocumentManager()
{
string categoryName = "My Application Name";
// Initialize an OperationPerformanceCounterManager;
// the Create Document operation
m_PerfMonCountersForCreateDocument =
new OperationPerformanceCounterManager(
categoryName, "Create Document");
}
public int CreateDocument(string name)
{
// Get the start time
var startTicks = DateTime.Now.Ticks;
try
{
// Perform the operation
var documentId = DoCreateDocument(name);
return documentId;
}
finally
{
// After the operation completes, record how long it took
m_PerfMonCountersForCreateDocument.RecordOperation(
DateTime.Now.Ticks - startTicks);
}
}
private int DoCreateDocument(string name)
{
// Do some work
}
}
About the Author
Benjamin Day is a consultant, trainer, and author specializing in software development, project management, and leadership. Ben’s main areas of emphasis include Azure DevOps, C#, Angular, Scrum, software testing, and software architecture. He is a Microsoft MVP, a certified Scrum trainer via Scrum.org, and speaks regularly at VSLive. His online courses are available at YouTube and at http://www.pluralsight.com. Ben is also the founder of https://SlideSpeaker.ai. He can be contacted via http://www.benday.com.