Skip to content

Application monitoring

Introduction

This document describes the application monitoring capabilities of the Excalibur Enterprise system. We recognize two ways of monitoring, namely:

  1. Dashboard Overview - Integrated monitoring in dashboard GUI.
  2. Ping Servlet - monitoring API calls using external tools.

Dashboard Overview

The Excalibur Enterprise system also includes its own application monitoring, which is available within the Dasboard administration console in the Overview section 1. Currently monitored parameters are:

  • Analytics

    • users - count
    • sessions - type (online, manual, OTP), count, occurences (Local, AD)
    • incidents - type (low, medium, high), count, occurences (client, token)
    • actions - type, state, count
    • clienti - version, state, OS, count
    • tokeny - version, state, OS, count
  • Monitoring

    • report - count of licences, performance, count
    • server - process utilization, processing of manual and lost sessions, server restart
    • facades - state, utilization, facade logs
    • PAM - allocating disk space capacity for recordings, Tresk monitoring

Ping Servlet

The Excalibur Enterprise system publishes data on the status and performance of individual components via (XML). App (HTTP request) will provide a valid XML file on demand that contains information about the status of all its components, the status of its internal environment (DB connection, connected facades ...), and performance parameters. The XML is valid against the attached basic XSD schema.

Calls

Request: standard HTTP request to URL: excalibur.example.com/api/ping

Security: Authentication using Excalibur API Tokens

Response: XML report from application's monitoring

Call sample:

curl \\
  --request POST \\
  --data ‘api_token=61592B2E5C01ABF7C83E0EBA9E88CA706996419A07D1BAB6F9E51F97E49C63B6’\https://excalibur.example.com/api/ping
curl \\
  --request GET \\
    https://excalibur.example.com/api/ping?api_token=61592B2E5C01ABF7C83E0EBA9E88CA706996419A07D1BAB6F9E51F97E49C63B6

Output sample:

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="https://excalibur.example.com:443/dashboard/static/xsl/xclbr.xsl"?>
<applicationStatus xsi:noNamespaceSchemaLocation="pingServletSchema.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<components>
  <component>
    <area>Application</area>
    <infoType>Online</infoType>
    <name>Verzia aplikácie</name>
    <value>3.3.6</value>
  </component>
  <component>
    <area>Interface</area>
    <inteface>DB</inteface>
    <infoType>Online</infoType>
    <name>Stav konekcie na databázu</name>
    <status>OK</status>
    <message>mysql</message>
  </component>
  ...

Description of XML elements:

  • <area> - Type of area , dial is attached here
  • <interface> - Type of attribute, dial is attached here, required in case that area = Interface
  • <infoType> - Type of attribute, obtained online, or value from cache (Online/Cache)
  • <infoTypeDate> - The date of the last synchronization of the Cache attribute, if online, does not need to be filled in
    • Shape of date: CYYMMDDHHMMSSmmm
      • C - century
      • YY - year
      • MM - month
      • DD - day
      • HH - hour
      • SS - second
      • mmm - millisecond
  • <name> - The name of a specific element, e.g. XYZ database status, or number of requests per hour
  • <status>
    • OK
    • ERROR
    • WARNING
    • RUNNING
  • <message> - In case of ERROR status, WARNING displays an error messageu
  • <value> - Real value, data for selected types of attributes, e.g. number of requests to the application
  • <overall_status> - conjunction of state components, if any is ERROR, also overall_status will be in ERROR state.

Authentication

Authentication using the Excalibur API Token is required to access the ping servlet data, where the access token is a parameter part of the HTTP request (GET, POST).

Excalibur API Token

To access external API calls, it is necessary to generate and enable an API token in the Excalibur system, which is used for later access to the calls themselves.

In the case of a Ping Servlet, the API token is generated in the Dashboard administration console in the API access tokens section.

Creating a API token:

  1. Click on the "+" button and fill in the name
  2. Select /api/ping
  3. Select Active
  4. Click on the Generate token.
  5. Save

The displayed link must be saved, as it will no longer be displayed the next time you access the token settings. If this link is lost, a new one must be generated.

Output displaying

In XML is a (configurable) link to an XSL file , which ensures an automatic overview representation in a web browser. The Excalibur system provides in a standard a default XSL template of the XSLTB2019.

Refernces

[1] Excalibur Administrator Dashboard Manual