Reputation: 35637
I understand that using Perfmon.msc
you can create a custom performance counter and by using counter log, you can write the counter value to a text file.
I also understand I can also use this programmatically by creating a performance counter by using System.Diagnostics.PerformanceCounter
, and get the counter value using NextValue()
method.
Is there a programmatical way to tell the PerformanceCounter
object to write the log to a text file too (similar to Counter Log in perfmon.msc
)?
Upvotes: 5
Views: 3019
Reputation: 35637
Using P/Invoke as suggested by another poster gave too much trouble. I suggest running logman from command line using System.Diagnostics.Process.Start()
Upvotes: 2
Reputation: 106906
In .NET you will have to sample the counter yourself and write the sampled value to a file. However, the Win32 API has functions to do what you want. For an example of the native API see Writing Performance Data to a Log File. You could try to use p/invoke to call the API.
Upvotes: 4