I'm writing an application that takes in a file name as input, and then extracts its ACLs using FileSecurity.GetAccessRules(). Once I have these ACLs, I go through and identify each group member, obtain a group principal using Principal.FindByIdentity(),
and traverse group principals using GroupPrincipal.GetMembers(). Undoubtedly the first call is going to hit the share where the file is located, and the next two calls are going to translate into LDAP queries against the AD server.
I'm wondering, are there performance counters that I can attach to on the machine where the code runs so that I can monitor how hard I'm hitting each server? The thing is that I'm not going to be able to attach a counter to the server iteself.
So Ideally, I would want to know how many bytes I'm sending out of this process per second. I'm currently using category "Process", counter "IO Other Bytes/sec" to monitor activity. However, this counter doesn't seem to map
1-to-1 from the data that it reports and the data that Perfmon reports on the network share / AD server. The mapping seems to be more of a 1:5 relationship, so that when the local process reports that it's sending 10,000 bytes/sec, Perfmon reports that
it's getting hit with 50,000 bytes/sec. Is there a better counter to attach
View Complete Post