See also:

Dotcom-Monitor allows you to send data with real-time monitoring statistics or custom information to third-party software, web applications, or real-time dashboards. This real-time report data can include such information as:

  • Statistics on your Dotcom-Monitor account utilization (used and available resources per solution).
  • A state and status of one or a set of monitoring devices.
  • Response details received for one or a specified set of devices. The request for the response information can be highly customized to a necessary level of details using a number of request parameters.
  • Monitoring devices and tasks configuration data.

To publish on-demands real-time reports Dotcom-Monitor uses the XML Reporting Service framework.

The XML Reporting Service (XRS) is a free on-demand service that provides data via HTTP requests. The XML feed delivers monitored device information for web applications and websites in a custom format. Use-case examples include: an ISP providing independent uptime, performance and up-to-minute status of their services to their customers via a web site; or a Data Center integrating monitoring data with their internal applications.

By sending a properly formatted HTTP(S) GET request to xmlreporter.dotcom-monitor.com with valid parameters, you will receive an XML document with the requested data. See the specifications on the request parameters in the Request Parameters Description to Pull Real-time XML Report article.

You can work with the data from the XML document as you need. Possibilities include importing the data into another system, SQL database, dashboard, or publishing it into Microsoft Excel.

Configuring HTTP Requests to XML Feed

The XML Feed request is an URL with a number of GET parameters, separated by a “&” symbol.

An XML request consists of the following items: 
 [base_url_address]  +  [account_uid]  +  [Site_id]  +  [parameter1]&[parameter2]… 

Sample requests:
 https://xmlreporter.dotcom-monitor.com/reporting/xml/responses.aspx  ?PID=4229AF4F0FB545AEA75EAF2013E51BB7  &Site=12345  &Type=Overall   https://xmlreporter.dotcom-monitor.com/reporting/xml/responses.aspx  ?PID=78799A2394884BA880A4DCAC62AAE90D  &Site=57628  &Type=Detail&location=NY, USA 

Account UID

First, to create an XML request you need your account Unique Identifier (Account UID) to use as   [account_uid]  in the request parameters.

To create an Account UID for XML Feed:

  1. Login to your Dotcom-Monitor root account.
  2. Go to Manage Integrations and click New Integration.
  3. In the Add Integration window, choose XML Feed.
  4. Click Create Integration.
  5. Use the UID added for the XML Feed integration type as the Account UID in the requests to mlreporter.dotcom-monitor.com.

How to Output Department’s Data to XML Feed

If you have Departments created in your account, you can configure an XML Feed to deliver reports on a particular department or several specific departments. There are two ways to create an XML request to a department.

Users with an access limited to a particular Dotcom-Monitor Department account can pull XML reports only on the assigned department. You can create an Account UID for your department as usual when logged in to the department account. Simply use this UID for the department as your Account UID in all requests to xmlreporter.dotcom-monitor.com.

Users with an access to a root Dotcom-Monitor account can pull data on a particular department or several specific departments from the account by using the Account UID with enabled access to department’s data in conjunction with the Department Account IDs in the requests to xmlreporter.dotcom-monitor.com:

https://xmlreporter.dotcom-monitor.com/reporting/xml/config.aspx?PID=<Account UID with access to department's data>&Department=<Department Account ID>

Individual Department Account IDs are assigned to each department and can be found when logged in to a root account under Account Settings > Departments.

To create an Account UID for XML Feed with access to department’s data:

  1. Login to your Dotcom-Monitor root account.
  2. Go to Manage Integrations and click New Integration.
  3. In the Add Integration window, choose XML Feed, select to Allow access to department’s data.
  4. Click Create Integration.
  5. Use the UID for the XML Feed (with access to department’s data ) integration type as the Account UID in the requests.

Example

This request will return the XML with details on all sites and devices broken down by departments with the specified IDs:

https://xmlreporter.dotcom-monitor.com/reporting/xml/config.aspx?PID=F8F97FD1B7440685F747096B6FFB80&Department=59069&Department=97895&SiteName=*

Limitations on the Number of XML Feed Requests

The maximum number of requests to the XML Report Service is 1 every 10 seconds.

If you submit more than one request within 10 seconds, XRS returns an XML document with the next allowed request time as follows:

  • <error> You have reached maximum allowable requests limit per IP [192.168.107.97] </error>
  • <nextAllowedTime>Tuesday, February 18, 2014 7:50:26 PM</nextAllowedTime>
  • <nextAllowedTimeGMT>Tuesday, February 18, 2014 4:50:26 PM</nextAllowedTimeGMT>

XML Response Fields

In this section, you can find descriptions on some fields from the Dotcom-Monitor XML Feed:

<Response> 
<ID>3424533543</ID> 
<Name>Demo request</Name> 
<URL>http://demo.webportal.com/APIv1/json?userid=test;userweight=22;ACT=DASW</URL>
<Monitoring-Date-Time>3/26/2014 12:38:38 PM</Monitoring-Date-Time> 
<Duration>114</Duration>
<DnsTime>0</DnsTime>
<SSLTime>0</SSLTime> 
<ConnectionTime>15</ConnectionTime> 
<RequestTime>0</RequestTime> 
<FirstPacketTime>97</FirstPacketTime> 
<DownloadTime>2</DownloadTime> 
<Status>S</Status> 
<Monitoring-Location>FL, USA</Monitoring-Location> 
</Response>
  • Duration – overall time that has been taken to complete the task (basically – the sum of times below)
  • DNSTime – is the time required to resolve a hostname (e.g. www.google.com) into a numeric IP address (e.g. 216.239.59.99).
  • SSLTime – is the time required to complete the SSL handshake process.
  • ConnectionTime – is the time required to create a TCP connection to the webserver (or proxy). Keep-Alive connections are often used to avoid the overhead of repeatedly connecting to the webserver.
  • RequestTime – is the time required to send the HTTP request message to the server and will depend on the amount of data that is sent to the server. For example, long Send times will result from uploading files using an HTTP POST.
  • FirstPacketTime – (Time To First Byte) time elapsed to start receiving data from the remote web server. In other words, the time between request and response first byte received.
  • DownloadTime – is the time taken to read the response message from the server. This value will depend on the size of the content returned, network bandwidth, and whether HTTP compression was used. In other words, the time between response first and last bytes.

Opposite to Dotcom-Monitor shareable dashboards and other types of built-in reports, using the XML Feed you can pull only parameters you want to work with or see on your dashboard in other types of third-party applications that support XML data sources. For example, you can create a visualization of the web performance of particular devices from your Dotcom-Monitor account with the maximum available level of details. The flexible XRS framework allows you to pull only metrics that are most important for your project. A big number of XML Feed request parameters are available to customize your request – you can choose if you want to receive a brief summary on the monitoring devices from your account or you wish to have overall data on each monitoring device. Let’s look closer at how detailed your data can be. You can configure your request to receive:

  • Summary data, such as uptime/downtime, number of successes, and number of failures, performance data, and standard deviation.
  • High-detailed report with raw data for a requested period (up to the last 6 months).
  • Response data aggregated into hour-long periods.
  • Response data aggregated into 24h-long periods for a specified period.
  • Summary by week for the specified period.
  • Statistical data calculated over a 3-month period.
  • Summary by month for a specified period.
  • Summary by year for a specified period.

Also, using the request parameters you can specify the start and end date and time for reporting. To execute an analysis of the hourly and daily load (Average Response Time, Response Time STDDev, Downtime Percentage, etc.), you can pull a report with averages calculated over a specified period (for example, a week period).

If you have ever pull Online Reports for your monitoring device in Dotcom-Monitor, you may probably find it convenient to use its Uptime/Downtime chart. Using the XRS framework you can also receive an XML report with device statistics broken down by uptime and downtime periods.

You can also apply Dotcom-Monitor Filters (Configure > Filters) to the data in your reports. Using the Schedules (Configure > Schedules) created in your Dotcom-Monitor account you can publish only results that were received during a period specified in a particular scheduler.

In addition, you can pull only successful or only failure responses on your choice, filter the report statistics by monitoring locations in your XML Feed report, etc. See the descriptions of all the available parameters in the corresponding sections of this article.