Leveraging the XMLServiceReader for Custom Health Checks

by Nicholas Dille on 07/27/2009 | 0 Comments | 3,234 Views

After having published the XmlServiceReader, I have described how to use this tool to customize health check in XenApp Health Monitoring and Recovery (HMR). In this article I will cover health checks that to not apply to a single server but assure the operation of the farm as a service independently of individual servers.

Therefore, you should not be using the tests included in this article with XenApp Health Monitoring and Recovery (HMR) because they are to be executed only once per farm.

Application Existence

Often, a handful of applications is flagged to be mission-critical to a customer. There are several tests to ensure the availability of such an application. The first of a series of tests checks whether the application is announced by the XML service.

By sending the following request, the XML service replies with a full list of published applications:

<RequestAppData>
<Scope traverse="subtree" />
<DesiredDetails>defaults</DesiredDetails>
<ServerType>win32</ServerType>
<ClientType>ica30</ClientType>
</RequestAppData>

In this list of published applications, search for the friendly name of the important application which is enclosed in the FName tag, e.g.

<FName>Command&#32;Prompt</FName>

 Using this tests, you can check for an application to be present without knowing whether the application is available to a specific user group.

Application Visibility

After making sure that an application exists in a XenApp farm, the following test verifies an application to be published to a specific user group by requesting the access list of the application called Notepad. Note that the application name may contain a space which needs to be encoded as %20 in the request.


<RequestAppData>
<Scope traverse="subtree" />
<DesiredDetails>access-list</DesiredDetails>
<AppName>Notepad</AppName>
<ServerType>win32</ServerType>
<ClientType>ica30</ClientType>
</RequestAppData>

 Now parse the reply for the Group tag containing the GroupName and Domain tags, e.g.

<Group>
<GroupName>Ctx-User</GroupName>
<Domain type="NT">SEPAGOND</Domain>
</Group>

You can now be certain that a specific application exists and is visible to a user group.

Application Availability

Now, there is only one piece of information missing. The last test in this series checks whether the XenApp farm is able to assign a server to host a specific application:


<RequestAddress>
<Name>
<AppName>Notepad</AppName>
</Name>
<ServerAddress addresstype="no-change" />
</RequestAddress>

If this test is successful, the reply contains a tag called TicketTag which contains a number called the IMAHostId representing a unique server in the farm, e.g.


<TicketTag>IMAHostId:

Caution

As mentioned before, you should be using a mechanism external to HMR because the tests ensure an application to available independent of the individual servers. They rather check that the farm knows of an application and is able to name a server responsible for launching the application.

+++ Profile Migrator 2 - Ein neuer Desktop, ein frisches Benutzerprofile und alle bewährten Einstellungen und Daten. Jetzt kostenlos und unbefristet testen!

Add Comment

Der Inhalt dieses Feldes wird nicht öffentlich angezeigt.
Sicherheitscode
Diese Frage hat den Zweck zu testen, ob Sie ein menschlicher Benutzer sind und um automatisierten Spam vorzubeugen.
Bild-CAPTCHA
Geben Sie die Zeichen ein, die im Bild zu sehen sind.

Citrix Competence Blog

Der optimale Einsatz der Citrix Produktpalette steht seit Jahren Im Fokus der sepago Beratungsdienstleistung. In diesem Blog berichten wir über neue Trends, technische Details und unsere Erfahrungen aus vielen Citrix Projekten.

RSS-FeedAlle Artikel des Competence Blogs abonnieren.

 

Über den Autor

Bild von nicholas
Nicholas Dille
Head of Technology and Innovation
Blogs about Centralized computing, virtualization and performance monitoring

Alle Artikel des Bloggers