• Article for your preferred language does not exist. Below is international version of the article.

Article ID: 114196, created on Jun 25, 2012, last review on Aug 12, 2014

  • Applies to:
  • Operations Automation 5.4

Resolution

There are several ways to catch the content of provisioning requests from Parallels Operations Automation (POA) to Parallels Windows Provisioning Engine (WPE). This information may be useful when troubleshooting POA provisioning task failure.

WPE Request Tracer Tool

  1. Open the RDP connection to the WPE host.
  2. Run the WPE Request Tracer Tool: Start > All Programs > Parallels > Parallels Windows Provisioning Engine > WPE Request Tracer Tool.
  3. Click the button Live Tracing on the main panel to start tracing.
  4. Run the failing task in POA Task Manager.
  5. The WPE Request Tracer Tool will show requests/responses in real time.
  6. After the task fails (or completes), click the button Live Tracing again to stop tracing.
  7. Save requests/responses as a file or analyze them right in the WPE Request Tracer Tool.

See the example of live WPE request tracing below:

alttext

In the example above we see the ID and the name of the request in the left panel - SW Managed Exchange::ModifyMailbox. The right panel contains the whole XML request and execution results.

WPE Debug Log

Content of the provisioning XML request from POA to WPE may be found in the debug log on the WPE host: C:\Program Files\Parallels\Windows Provisioning Engine\Logs. See the example below. INFO 2012-06-25 06:29:55 (1572/3868): Request:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<request xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <data />
  <procedure>
    <execute impersonate="1" namespace="SW Managed Active Directory" procedure="GetProperties">
      <after destination="data" destinationPath="log" source="executeData" />
      <executeData>
        <preferredDomainController>DC01.ex2010mt.trainers.plesk.ru</preferredDomainController>
        <path>LDAP://CN=Users,DC=ex2010mt,DC=trainers,DC=plesk,DC=ru</path>
        <propertyList>
          <property name="cn">
          </property>
        </propertyList>
      </executeData>
      <after destination="data" ifNull="fail" source="executeData" sourcePath="properties/property[@name='cn']">
        <xsl:template match="properties/property[@name='cn']">
          <Output>
            <var delimiter="" name="ResVar0" rawXML="no">
              <Value>
                <xsl:value-of select="." />
              </Value>
            </var>
          </Output>
        </xsl:template>
      </after>
    </execute>
  </procedure>
</request>
INFO    2012-06-25 06:29:55 (1572/3868): ----- REQUEST 3900a26e-3e26-47dd-bb1e-dd3b0a9930d6 is started
INFO    2012-06-25 06:29:55 (1572/3868): Procedure "SW Managed Active Directory::GetProperties" - (ENTER)
INFO    2012-06-25 06:29:55 (1572/3868): Procedure "ActiveDirectoryProviderEx::Get Properties" - (ENTER)
INFO    2012-06-25 06:29:55 (1572/3868): Procedure "ActiveDirectoryProviderEx::Get Properties" - (EXIT)
INFO    2012-06-25 06:29:55 (1572/3868): Procedure "SW Managed Active Directory::GetProperties" - (EXIT)
INFO    2012-06-25 06:29:55 (1572/3868): ----- REQUEST 3900a26e-3e26-47dd-bb1e-dd3b0a9930d6 is finished

POA Debug Log

Content of the provisioning XML request from POA to WPE may be found in the debug log on the POA Management Node:

  • Linux - /var/log/poa.debug.log
  • Windows - C:\Program Files\SWsoft\PEM\Logs\poa.debug.log

The request may be found with the following keywords:

  • Sending WPE request
  • WPE::api::submitRequest
  • hostname of the WPE server

An example of a provisioning request in the POA debug log is provided below:

Jun 25 05:49:31 pa-poa : DBG [1:32154:b7147b90:29806 1:32238:b70e1b90 WinHostControl]: [task:168 WPE::api::submitRequest] Sending WPE request in domain 'ex2010mt.trainers.plesk.ru' on endpoint
'http://wpe01.hosting.local:48480/WPEService.asmx' as user 'pem_admin': <?xml version="1.0" encoding="UTF-8" standalone="no" ?> <request xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<data/><procedure><execute impersonate="1" namespace="SW Managed Active Directory" procedure="GetProperties"><after destination="data" destinationPath="log" source="executeData"/>
<executeData><preferredDomainController>DC01.hosting.local</preferredDomainController><path>LDAP://CN=Users,DC=hosting,DC=local</path>
<propertyList><property name="cn"></property></propertyList></executeData><after destination="data" ifNull="fail" source="executeData" sourcePath="properties/property[@name='cn']">
...

Use tcpdump on POA Management Node

This method only works if the POA Management Node is deployed on a Linux server.

  1. Find the hostname of the WPE server in the POA Provider Control Panel at System Director > Configuration Manager > Services; filter services by Name = WindowsProvisioningEngine.
  2. Find the IP address of the WPE host at Deployment Director > Server Manager > Hardware Nodes > select WPE host > Networking > IP Addresses.
  3. Run a command like the one below on the POA Management Node (MN):

    tcpdump -pnn -iany -Xs0 -w /tmp/WPE_trace.log host IP_ADDRESS 
    

    Replace IP_ADDRESS with the actual IP address of the WPE host.

  4. Run the task in POA Task Manager.

  5. Wait until the task fails or completes.
  6. Stop the tcpdump command on the POA MN.
  7. Read collected logs using a command like the one below:

    strings /tmp/WPE_trace.log | less
    

    The full content of the WPE request will be stored in the file.

In the default installation, POA uses TCP port 48480 to send requests to the Windows Provisioning Engine, so another way to catch requests from the POA MN to WPE is to catch all TCP packets sent to port 48480:

tcpdump -pnn -iany -Xs0 -w /tmp/WPE_trace.log port 48480

The actual port used on the WPE server may be found in the properties on the POA package WindowsProvisioningEngine on the WPE host:

  1. Find the hostname of the WPE server in the POA Provider Control Panel at System Director > Configuration Manager > Services; filter services by Name = WindowsProvisioningEngine.
  2. Remember the hostname of the WPE server.
  3. Go to Deployment Director > Server Manager > Hardware Nodes.
  4. Click on the WPE host.
  5. Switch to the Packages tab.
  6. Click the icon to the right of the WindowsProvisioningEngine package.
  7. Switch to the Package properties tab.
  8. Find the port in the parameter Windows Provisioning Engine port.

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

Search Words

Migrate Address List to Exchange 2010

2554725ed606193dd9bbce21365bed4e caea8340e2d186a540518d08602aa065 5356b422f65bdad1c3e9edca5d74a1ae ac82ce33439a9c1feec4ff4f2f638899 e12cea1d47a3125d335d68e6d4e15e07

Email subscription for changes to this article
Save as PDF