Summary
Error
In iSPI Performance for Metrics (iSPI Perf) on a Windows platform, running the checkConfig.ovpl/runCheckConfig.ovpl results in a 'FATAL' error -
"Failed determining perfspi service user...."
example -
<drive>:\Program Files (x86)\HP\HP BTO Software\NNMPerformanceSPI\bin>checkConfig.ovpl
[7524] E:\HPNPS\Program Files (x86)\HP\HP BTO Software\nonOV\Perl\a\lib/5.8.8/perfspi.pm(560) FATAL: Failed determining perfspi service user
Died at E:\HPNPS\Program Files (x86)\HP\HP BTO Software\nonOV\Perl\a\lib/5.8.8/npslog.pm line 194.
<drive>:\Program Files (x86)\HP\HP BTO Software\NNMPerformanceSPI\bin>runCheckConfig.ovpl
FATAL: Stacktrace: 0. <drive>:\Program Files (x86)\HP\HP BTO Software\nonOV\Perl\a\lib/5.8.8/NPS/nps.pm:733 [NPS::npslog::FATAL()]
FATAL: Stacktrace: 1. D:\PROGRA~4\HP\HPBTOS~1\NNMPerformanceSPI\bin\runCheckConfig.ovpl:15 [main::getETLUser()]
FATAL: Failed determining perfspi service user
Died at D:\Program Files (x86)\HP\HP BTO Software\nonOV\Perl\a\lib/5.8.8/NPS/npslog.pm line 194."
Cause
Fix
The following steps may serve as a suitable workaround :
1. Launch the Windows command prompt.
Note : If User Access Control (UAC) is enabled, use the 'Run As Administrator' option.
2. Check if the command 'sc qc perfspi' results in a failure similar to the one illustrated below.
>sc qc perfspi
"[SC] QueryServiceConfig FAILED 122:
The data area passed to a system call is too small.
[SC] GetServiceConfig needs XXX bytes"
Where,
sc <ServerName> : Server where iSPI Perf is installed
qc <ServiceName> : perfspi
3. If yes, then attempt to re-run the command by specifying a buffer size of 1000 bytes. And then verify if the command executes successfully.
>sc qc perfspi 1000
"[SC] QueryServiceConfig SUCCESS
SERVICE_NAME: perfspi
TYPE : 10 WIN32_OWN_PROCESS
START_TYPE :
.
.
."
4. If step-3 resulted favorably, then proceed to implement the following workaround to fix this error.
a. Take a backup of the following file -
In iSPI Perf v9.2x : <drive>:\Program Files (x86)\HP\HP BTO Software\nonOV\perl\a\lib\5.8.8\perfspi.pm
In iSPI Perf v10.x : <drive>:\Program Files (x86)\HP\HP BTO Software\nonOV\perl\a\lib\5.8.8\NPS\nps.pm
b. Next, use a text editor tool to view/edit the file perfspi.pm (v9.2x) or nps.pm (v10.x)
c. Edit the following line in the respective files -
From :
($user) = grep /SERVICE_START_NAME/, `"$ENV{SYSTEMROOT}/system32/sc" qc perfspi`;
To :
($user) = grep /SERVICE_START_NAME/, `"$ENV{SYSTEMROOT}/system32/sc" qc perfspi 1000`;
d. Save the changes to the file, and then attempt to re-run checkConfig.ovpl/runCheckConfig.ovpl
Note : If this workaround has failed to yield the desired results or, the outputs received from steps 2,3 are not aligned with the illustrations provided in this article, then please proceed to open a support ticket with HPE Software Support.