I’ve been working this week on some performance analysis for Windows Communication Foundation and I’d like to share a list of performance counters for WCF.
Basically, the performance counters for WCF are divided into three categories that define the scope of analysis: operation, services and endpoints.
Operation performance counters
These are the performance counters that provide you a good overview about the health of each operation:
- Calls: Total of calls to the operation;
- Calls Per Second: Average of calls to the operation per second;
- Calls Outstanding: Total of calls to the operation still in progress;
- Calls Failed: Total of calls to the operation that raised unhandled exceptions;
- Calls Failed Per Second: Average of calls to the operation that raised unhandled exceptions;
- Calls Faulted: Total of calls to the operation that raised SOAP faults;
- Calls Faulted Per Second: Average of calls to the operation that raised SOAP faults;
- Call Duration: Average duration of the calls to the operation;
- Security Calls Not Authorized: Total of calls that have its execution denied because of authorization issues for the operation;
- Security Calls Not Authorized Per Second: Average of calls per second that have its execution denied because of authorization issues for the operation;
- Security Validation and Authentication Failures: Total of authentication failures such as invalid token, missing elements, messages duplicated for the operation;
- Security Validation and Authentication Failures Per Second: Average of authentication failures per second for the operation;
- Transactions Flowed: Total of transactions flowed to the operation;
- Transactions Flowed Per Second: Average of transactions per second flowed to the operation.
Service performance counters
Focused on the service as a whole, the service performance counters give you the number for each service.
- Calls: Total of calls to the service;
- Calls Per Second: Average of calls to the service per second;
- Calls Outstanding: Total of calls to the service still in progress;
- Calls Failed: Total of calls to the service that raised unhandled exceptions;
- Calls Failed Per Second: Average of calls to the service that raised unhandled exceptions;
- Calls Faulted: Total of calls to the service that raised SOAP faults;
- Calls Faulted Per Second: Average of calls to the service that raised SOAP faults;
- Call Duration: Average duration of the calls to the service;
- Instances: Total of service instances;
- Instances Per Second: Average of service instances per second;
- Queue Dropped Messages: Total of messages dropped during transport to the service;
- Queue Dropped Messages Per Second: Average of messages dropped per second during transport to the service;
- Queued Poison Messages: Total of messages marked as poisoned during transport to the service;
- Queued Poison Messages Per Second: Average of messages marked as poisoned during transport to the service;
- Queued Rejected Messages: Total of messages rejected by the queued transport to the service;
- Queued Rejected Messages Per Second: Average of messages rejected by the queued transport to the service;
- Reliable Messaging Messages Dropped: Total of reliable messages dropped;
- Reliable Messaging Messages Dropped Per Second: Average of reliable messages dropped per second;
- Reliable Messaging Sessions Faulted: Total of reliable messages that have raised faults;
- Reliable Messaging Sessions Faulted Per Second: Average of reliable messages that have raised faults;
- Security Calls Not Authorized: Total of calls that have its execution denied because of authorization issues for the service;
- Security Calls Not Authorized Per Second: Average of calls per second that have its execution denied because of authorization issues for the service;
- Security Validation and Authentication Failures: Total of authentication failures such as invalid token, missing elements, messages duplicated for the service;
- Security Validation and Authentication Failures Per Second: Average of authentication failures per second for the service;
- Transactions Flowed: Total of transactions flowed to the service;
- Transactions Flowed Per Second: Average of transactions per second flowed to the service ;
- Transacted Operations Aborted: Total of operations within a transaction that have aborted;
- Transacted Operations Aborted Per Second: Average of operations within a transaction that have aborted per second;
- Transacted Operations Committed: Total of operations within a transaction that have committed;
- Transacted Operations Committed Per Second: Average of operations within a transaction that have committed per second;
- Transacted Operations In Doubt: Total of operations within a transaction that have an in-doubt response;
- Transacted Operations In Doubt Per Second: Average of operations within a transaction that have an in-doubt response per second.
Endpoint performance counters
These performance counters provide information specific for an endpoint:
- Calls: Total of calls to the endpoint;
- Calls Per Second: Average of calls to the endpoint per second;
- Calls Outstanding: Total of calls to the endpoint still in progress;
- Calls Failed: Total of calls to the endpoint that raised unhandled exceptions;
- Calls Failed Per Second: Average of calls to the endpoint that raised unhandled exceptions;
- Calls Faulted: Total of calls to the endpoint that raised SOAP faults;
- Calls Faulted Per Second: Average of calls to the endpoint that raised SOAP faults;
- Call Duration: Average duration of the calls to the endpoint;
- Reliable Messaging Messages Dropped: Total of reliable messages dropped;
- Reliable Messaging Messages Dropped Per Second: Average of reliable messages dropped per second;
- Reliable Messaging Sessions Faulted: Total of reliable messages that have raised faults;
- Reliable Messaging Sessions Faulted Per Second: Average of reliable messages that have raised faults;
- Security Calls Not Authorized: Total of calls that have its execution denied because of authorization issues for the endpoint;
- Security Calls Not Authorized Per Second: Average of calls per second that have its execution denied because of authorization issues for the endpoint;
- Security Validation and Authentication Failures: Total of authentication failures such as invalid token, missing elements, messages duplicated for the operation;
- Security Validation and Authentication Failures Per Second: Average of authentication failures per second for the endpoint;
- Transactions Flowed: Total of transactions flowed to the endpoint;
- Transactions Flowed Per Second: Average of transactions per second flowed to the endpoint.