You notice within Internet Information Services (IIS) that the application pool for Excel services has stopped. You start it, and it stops again. This occurs multiple times. You go to a Document library, and select to view in browser, an Excel file. You receive an error message as
"Unable to process request"
You review the SharePoint server diagnostic (ULS) logs, and find performance counter call failure and the following error:
The Performance Counter OS (pdh) PdhAddEnglishCounter method call failed with error code PDH_CSTATUS_NO_MACHINE.
The service account would need to be added to the two groups that are set on the registry key. The two groups are: Performance Monitor Users and Performance Log Users group. Add the two groups to the following registry key:
The permissions to grant to the two groups within the Advance settings of permissions are as follows:
- Performance Monitor Users (<Machine_Name>\Performance Monitor Users): Read, Query Value, Enumerate Subkeys, Notify
- Performance Log Users (<Machine_Name>\Performance Log Users): Read, Query Value, Enumerate Subkeys, Notify
The specific dialog boxes on the Perflib registry key permissions would be set to 'Read' for Performance Monitor Users and Performance Log Users:
You would select Advanced on the Permissions for Perflib, and set the following permissions for the Performance Monitor Users and Performance Log Users:
You will select within the Advanced Security Settings for Perflib, Performance Monitor Users, then click on Edit button. The Permission Entry for Perflib will be to add the following Allow Permissions, and once the permissions are selected, then click OK:
You will click OK after setting the permissions on one group. You will return and select within the Advanced Security Settings for Perflib, Performance Log Users, then click on Edit button. The Permission Entry for Perflib will be to add the following Allow Permissions, once the Permissions are set, then click OK:
Close all dialog boxes.
Overview of Windows Performance MonitorFor further troubleshooting, you can check the System or Application Event log for the following Event IDs and information:
System Event log:
Application Event log:
An internal error occurred.
at Microsoft.Office.Excel.Server.PdhPerformanceCounter.Pdh.CheckReturnValue(PDH_STATUS status, Boolean throwOnError, String
at Microsoft.Office.Excel.Server.PdhPerformanceCounter..ctor(String categoryName, String counterName)
at Microsoft.Office.Server.Diagnostics.FirstChanceHandler.ExceptionFilter(Boolean fRethrowException, TryBlock tryBlock, FilterBlock filter, CatchBlock catchBlock, FinallyBlock finallyBlock