User Guide

Configuration

In just a few steps it is possible to configure an Alyvix node in NetEye in order to monitor it from the web interface.

Nodes

Create an Alyvix Node

To begin monitoring an Alyvix node, the node must first be created in the Director module as an Icinga Host, setting at least one Hostname and one Host address, see Fig. 234.

Moreover also select Yes in the Alyvix node field under the Alyvix settings section.

Creation of a Host as a Alyvix node

Fig. 234 Creation of a Host as an Alyvix node

Once all the settings have been configured, a deployment is needed.

Alyvix Node Authentication

When performing a request from NetEye to the Alyvix node, Alyvix needs a way to authenticate the request.

JSON Web Tokens (JWT) are used to authenticate the requests to the Alyvix nodes. JWT is an open industry standard defined in RFC 7519 that provides a compact and self-contained way for securely transmitting information between parties as a JSON object.

Every request to Alyvix will contain the JWT Authorization Header with the JWT token retrieved from NetEye. The JWT is calculated using the RS512 algorithm (see RFC 7518#section-3.3) and the key pair, which is stored on the NetEye host under /neteye/shared/icingaweb2/conf/modules/neteye/jwt-keys.

In order for Alyvix to verify the JWT token, copy the public key file /neteye/shared/icingaweb2/conf/modules/neteye/jwt-keys/multipurpose-jwt.pub inside each Alyvix node.

Visualize Nodes

The Alyvix node list can be visualized by visiting the Alyvix / Nodes page. The following fields are displayed for each node:

  • Name: The name of the Alyvix node set previously during the Host creation

  • Sessions status: The list of sessions with the status. Possible status values are:

    • disconnect_icon Disconnected

    • running_icon Running

    • waiting_icon Connected

    • stopped_icon Connected but with the control session in Stop or Break

  • Health: The Host status monitored by NetEye. Next to the health status is a link that opens the host page in the monitoring module.

  • License: The status of the license can be: Disabled, Active, Expiring or Expired

  • Alyvix version: The version of Alyvix that is running on the node

Apart from the node details, a summary provides the following information:

  • Total nodes: The overall number of nodes

  • License alerts: The number of licenses that are not in the Active status

  • Health alerts: The number of nodes with the host status DOWN or UNREACHABLE

For an easier lookup of the relevant information related to the nodes and their execution, it is possible to search the table, by using the search bar, and sort the various columns, clicking their name.

The Alyvix nodes page

Fig. 235 The Alyvix nodes page

Manage Node Details

From the nodes page, available at Alyvix / Nodes, it is possible to click a particular node in the list to visualize its details. The details panel, shown in Fig. 236, is then rendered on the right-hand side of the table, displaying the details of the node, grouped in three different tabs.

Sessions Tab

A session on an Alyvix node is defined by the following properties:

  • Name: The domain and the session username separated by a \ . E.g. WP\MyUsername

  • Testcase waiting period: Number of minutes before scheduling the next test case

  • Workflow waiting period: Number of minutes before restarting the workflow

  • Display dimensions

    • Width: the width of the screen resolution in pixels

    • Height: the height of the screen resolution in pixels

    • Zoom: the zoom percentage

  • Password: the password used by the session in conjunction with the username

The Sessions tab, shown in Fig. 236, contains:

  • The New session button, which allows a user to create a new session

  • A counter, that reports how many licensed sessions have been consumed out of the available ones

  • The sessions table, in which each row represents a separate session defined on the node. Each session on the node can be edited or deleted by selecting the preferrable action in the More options menu for a particular session. When editing a session a user can:

    • Modify the sessions properties in the Settings tab. Please note that the Name cannot be changed

    • Manage the session workflow in the Workflow tab

    A change in the session workflow status can also be applied to multiple sessions, by selecting the corresponding rows in the tab and applying the desired action.

The session list of a node

Fig. 236 The session list of a node

Session workflow

Fig. 237 Session workflow

Control multiple sessions workflow

Fig. 238 Control multiple sessions workflow

License Tab

In this tab the following details about the node license are reported:

  • Status: the status of the license

  • Subscription plan: the subscription plan currently in use

  • Expiration date: the expiration date of the license

  • Remaining days: days left before license expiration

  • Licensed sessions: the number of sessions available with the subscription plan currently in use

Moreover, the tab offers the possibility to download the request key, necessary to obtain a new activation key for the selected node. Once the request key has been downloaded, please contact your Alyvix provider in order to obtain the activation key, which can then be uploaded directly from the node’s License tab.

General Settings Tab

The General Settings tab reports the private key for the selected node and the retention period, in hours, for the successful test cases, failed test cases and for the service logs. Moreover, a toggle enables the capture of annotated screenshots also for successful test case runs. You can also edit settings in the General tab.

Test Cases

Manage Test Cases

The Alyvix test cases list can be visualized by visiting the Alyvix / Test Cases page. The table displayed in the page provides a user with an overview of the test cases scheduled on all Alyvix nodes, useful to centralize, in a single view, the information coming from different nodes.

For each test case, the following data about its execution are displayed:

  • Name: The name of the test cases

  • Node: The name of the node on which the test case is scheduled

  • File: The name of the file associated with the test case

  • Arguments: The arguments used by the test case during its execution

For an easier lookup of the relevant information related to the test cases and their execution, it is possible to search the table, by using the search bar, and sort the various columns, clicking their name.

The Alyvix test cases page

Fig. 239 The Alyvix test cases page

Moreover, a dedicated option of the More options menu allows a user to delete, after confirmation, a selected test case.

Furthermore, when visualizing the test cases, it is possible to add a test case by clicking the Create button. A side panel will open with the possibility to schedule a test case on one of the available nodes.

Manage Test Cases details

You can view the details of a particular test case by clicking it in the test cases list. The details panel for a selected test case will appear on the right, with details being grouped into Sessions and General tabs.

Sessions Tab

This tab reports all sessions a test case is scheduled for. Each session can be identified by its name and the status of a test case in the session, either enabled or disabled. The status can be simply changed by using the associated checkbox.

On the other hand, a session’s workflow and settings can be modified by clicking the arrow button for a particular session item.

The Alyvix test cases sessions details

Fig. 240 The session details of a test case

General Tab

General test case details include:

  • Name: The name of a test case

  • Node: The node a test case is scheduled for

  • File: The file containing the test case definition, selectable among the files available on the node

  • Arguments: The arguments used by a test case during its execution

When visualizing the general details of a test case, it is possible to update the file, arguments and compression parameters.

The Alyvix test cases general details

Fig. 241 The general details of a test case

Reports Tab

A test case is executed periodically by Alyvix. Each execution is called test case run. The Reports tab is the place where the runs of a test case are shown. Runs are ordered by date and time of execution, the most recent being added at the top of the list.

Each run is described by the following data:

  • Result icon: the result represented by a green icon for successfully run test cases, red icon for failed ones

  • Timestamp: the date and time when the test case was run

  • Session: the session in which the test was executed

  • Screenshot icon: an icon is displayed if the run has an associated screenshot of the execution

You can filter test cases to view only failed runs with a toggle on top of the list.

Clicking on a specific run will open the Report view, which shows the following details:

  • Node name: the name of the node where the test case was executed

  • Username: the username of the RDP session used by the test case

  • Date: the execution date

  • Time: the execution time

  • Duration: the time, in seconds, taken by the test case execution

  • Transactions list: a list of the transactions composing the test case. For each transaction, its execution status and duration are reported.

By selecting a transaction, you can consult the transaction parameters and understand how it performed. In particular, the following details are displayed:

  • Screenshots: if available, the screenshot taken by the Alyvix Robot (possibly with annotations and the transaction definition).

  • Transaction parameters: reporting the transaction performance and its specification.

Put Test Case in Production

This section explains how to put an Alyvix test case in production, starting from the setup of an Alyvix node.

Step 1. Configure Alyvix Nodes

Alyvix Server

The first step, to be able to run an Alyvix test case, is to configure a Windows machine as an Alyvix Server, following the detailed instructions reported by the Alyvix documentation.

When the machine is configured, a new test case file can be created using Alyvix built-in tools.

NetEye Integration

After configuring a Windows machine as an Alyvix Server, add it to NetEye through the Director module, by following the Create an Alyvix Node section. Also, make sure to configure the Alyvix JWT authentication as explained in Alyvix Node Authentication.

Activate Alyvix Licenses

To run a test case on an Alyvix Server, the node must have a valid license. It is possible to download the license request key and then upload the obtained license activation key directly from NetEye, as described in the License Tab section.

Step 2. Create Alyvix Sessions

A test case should be run within a session. To add it, switch to the nodes list, select the Alyvix node and click the New Session button in the Sessions Tab.

Step 3. Create Alyvix Test Cases

Once you have added a session on the Alyvix node, switch to the test cases list and click Create.

  • Select the node to run a test case on

  • Specify its definition by choosing the file previously created on the Alyvix Server machine.

Step 4. Run Test Cases

At this point, the test case you created is not running in its session. To enable its execution, click the arrow button in correspondence with the session previously defined to open the session workflow controls.

  • Enable the test case in the session using the associated toggle

  • Start the session by enabling its workflow

Step 5. Check Test Case Results

Once the test case has been executed, switch to the Reports Tab to visualize its runs.

  • Click a specific run to open the Report view, which shows the details and all its transactions

  • Select a transaction to consult its parameters and understand how it performed.