Interacting with the Application Monitoring Web service

You can access the Application Monitoring Web service through, for example, the SOAP protocol. The Web service exposes a TridionMonitoringAgent interface with a GetStatus() method that returns an array of ServiceStatus elements.

ServiceStatus is an interface containing the members listed in the following table:

Member nameTypeDescription
ServiceType stringUniquely identifies this type of service (for example, "Broker" or "Content Manager Search")
ServiceInstance stringUsed only if multiple instances of the same type of service (say, multiple Content Deployers) run on the same machine to identify this specific instance. Otherwise set to null.
ProcessId intThe operating system ID of the process that runs this service; set to -1 if not applicable.
Status (an enum ) Status

The current status of the service, one of:

  • Unknown
  • OK
  • Error
  • NotResponding
Message stringAn optional reason for the current status; set to null if not applicable or not available.
StatusChangeTime DateTimeThe date and time at which the status last changed.
LastReportTime DateTimeThe date and time at which the status was last checked (possibly without success); set to null if the status has never been checked.
MonitoredThreadCount intThe number of threads currently being monitored; set to 0 if there are currently no monitored threads, or to -1 if thread monitoring is not applicable.
NonRespondingThreadsarray of ThreadStatus

Details about threads that report problems; set to null if no threads are being polled or if no threads report problems. A ThreadStatus object contains:

ThreadId
an integer identifying the thread; set to -1 if ThreadName is unique.
ThreadName
a string identifying the thread; set to null if ThreadIdis is unique.
StatusChangeTime
a DateTime object specifying the date and time at which the status last changed.
LastReportTime
a DateTime object specifying the date and time at which the status was last checked (possibly without success); set to null if the status has never been checked.

Example XML response to a SOAP request

The following is an example XML response to a SOAP request:

<ServiceStatus>
	<ServiceType>Content Manager Publisher</ServiceType>
	<ProcessId>2364</ProcessId>
	<Status>NotResponding</Status>
	<StatusChangeTime>2006-10-17T13:12:02Z</StatusChangeTime>
	<LastReportTime>2006-10-17T14:46:02Z</LastReportTime>
	<MonitoredThreadCount>15</MonitoredThreadCount>
	<NonRespondingThreads>
		<ThreadStatus>
			<ThreadId>13</ThreadId>
			<ThreadName>The name of the thread</ThreadName>
			<StatusChangeTime>2006-10-17T13:12:02Z</StatusChangeTime>
			<LastReportTime>2006-10-17T14:46:02Z</LastReportTime>
		</ThreadStatus>
	</NonRespondingThreads>
</ServiceStatus>
<ServiceStatus>
	<ServiceType>Workflow Agent</ServiceType>
	<ProcessId>2464</ProcessId>
	<Status>NotResponding</Status>
	<StatusChangeTime>2006-10-17T14:31:02Z</StatusChangeTime>
	<LastReportTime>2006-10-17T14:47:02Z</LastReportTime>
	<MonitoredThreadCount>2</MonitoredThreadCount>
</ServiceStatus>