Article ID: 114186, created on Jun 22, 2012, last review on Aug 12, 2014

  • Applies to:
  • Operations Automation

Resolution


There are 3 different ways to catch requests which POA sends to the Microsoft Provisioning System during Windows services provisioning. It may be useful during troubleshooting of failing POA tasks related to Windows services provisioning.

Use tcpdump on POA MN

This is the fastest and easiest way, however it only works if POA Management Node is deployed on Linux server.
  1. Find the IP address of the shared hosting server to which POA will send provisioning request, i.e. where service will be provisioned (see point 2 in the KB article Windows service provisioning troubleshooting for instructions)
  2. If the shared hosting server has many IP addresses determine to which exact IP address of the server POA will send the request (see below)
  3. Run the command like this on POA Management Node (MN):tcpdump –pnn –iany –Xs0 –w /tmp/MPF_trace.log host IP_ADDRESS

Replace IP_ADDRESS with real value which you found on the step 2.

  1. Run the task in POA Task Manager
  2. Wait until task fails or completes
  3. Stop tcpdump command on POA MN
  4. Read collected logs using command like:strings /tmp/MPF_trace.log | less

Full content of MPF request will be stored in the file.

Note: this approach can also be used to collect trace of request sent to POA Agent on a Linux server when POA executes Linux service provisioning tasks.

Use TraceView on MPS Server

  1. Open RDP connection to the MPS server where request will be executed (if multiple MPS servers are registered in POA see point 4 in the KB article Windows service provisioning troubleshooting on how to find the right server)
  2. Open Windows Task Manager and make sure there is no process with name TraceView.exe. If there is – kill it.
  3. Run TraceView utility - C:\Program Files\Microsoft Provisioning\Resource Kit\TraceView
  4. Start capturing traces - click triangle on top panel
  5. Run the task in POA
  6. Wait until task fails or completes
  7. Stop capturing traces in TraceView
  8. Save captured traces
  9. Close the TraceView

Note:do not keep TraceView utility running on MPS server for a long period of time, it eats up much memory and as result MPS engine will stop working.

Analyze POA Agent Log


  1. Find the Windows hosting server to which POA will send request (see point 2 in the KB article Windows service provisioning troubleshooting for instructions)
  2. Log onto the server using RDP
  3. Run the problem POA task and wait until it fails or completes
  4. Open POA Agent log file and perform search for task ID, you should find MPF trace in the file:
  • 32 bit server: C:\Program Files\SWsoft\PEM\Logs or C:\Program Files\Parallels\PEM\Logs
  • 64 bit server: C:\Program Files (x86)\SWsoft\PEM\Logs or C:\Program Files (x86)\Parallels\PEM\Logs

Example of the request in POA Agent log file (replace '&lt;' with '<' and '&gt;' with '>' to get correct XML packet) and error message:
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]: [task:1204767 Plesk::pleskd_impl::processHostOps] ===> ENTRY
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]: [task:1204767 HCL::HCLtoMPF::process] ===> ENTRY
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]: Thread (1828) Process: (<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]: <!DOCTYPE HCL PUBLIC "HCL" "HCL 1.0">
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]: <HCL>
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]:   <DECLARE/>
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]:   <PERFORM>
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]:     <MPFREQUEST>&lt;?xml version="1.0" encoding="UTF-8" standalone="no" ?&gt;
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]: &lt;request xmlns:xsl="http://www.w3.org/1999/XSL/Transform"&gt;
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]:   &lt;data/&gt;
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]:   &lt;procedure&gt;
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]:     &lt;execute impersonate="1" namespace="IIS Provider Ex" procedure="RecycleAppPool"&gt;
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]:       &lt;after destination="data" destinationPath="log" source="executeData"/&gt;
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]:       &lt;executeData&gt;
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]:         &lt;appPoolPath&gt;IIS://iis6.hosting.local/W3SVC/AppPools/ex_p00103805&lt;/appPoolPath&gt;
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]:       &lt;/executeData&gt;
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]:     &lt;/execute&gt;
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]:   &lt;/procedure&gt;
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]: &lt;/request&gt;
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]: </MPFREQUEST>
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]:   </PERFORM>
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]: </HCL>
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]: )
Jun  8 16:51:45 IIS6 : INF [1:14086:b4af6b90:3272 262:2664:724 pleskd]: [task:1204767 Plesk::MPFClient::MPFClientImpl::processRequest] MPF request executed via legacy mode on node 'MPS'
Jun  8 16:51:45 IIS6 : INF [1:14086:b4af6b90:3272 262:2664:724 pleskd]: [task:1204767 Plesk::MPFClient::MPFClientImpl::runRequest] MPF request will be executed on node 'MPS'
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]: Mpf request error: <
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]: Mpf request response: Unknown error 0x80131604
[<response><errorContext description="Exception has been thrown by the target of an invocation." code="0x80131604" executeSeqNo="1">
<errorSource namespace="IIS Provider Ex" procedure="RecycleAppPool"/></errorContext></response>]
Jun  8 16:51:45 IIS6 : ERR [1:14086:b4af6b90:3272 262:2664:724 lib]: [task:1204767 HCL::HCLtoMPF::mpfRequest]
{module_id="WinMpf"; code="2"} Provisioning request failed. Unknown error 0x80131604 [<response>
<errorContext description="Exception has been thrown by the target of an invocation." code="0x80131604" executeSeqNo="1">
<errorSource namespace="IIS Provider Ex" procedure="RecycleAppPool"/></errorContext></response>]
Jun  8 16:51:45 IIS6 : DBG [1:14086:b4af6b90:3272 262:2664:724 pleskd]: [task:1204767 HCL::HCLtoMPF::process] <=== EXIT (by exception) [0.218747]



See also the Knowledgebase article #115790 Website Hosting: General information, Best Practices and Troubleshooting for more information about Shared Web Hosting in POA.

caea8340e2d186a540518d08602aa065 5356b422f65bdad1c3e9edca5d74a1ae e12cea1d47a3125d335d68e6d4e15e07

Email subscription for changes to this article
Save as PDF