Synthetic monitoring

Synthetic monitoring, also known as active monitoring or proactive monitoring, can simulate actions that a user takes on an application from different locations and continuously monitor at a specific interval for performance characteristics such as availability and response time.

Synthetic monitoring is supported on Instana SaaS, Standard Edition, and Custom Edition. Synthetic monitoring is not supported on Classic Edition.

To access Synthetic monitoring, click Synthetic Monitoring in the navigation menu. You can see a page that lists the Synthetic tests that you created. You can also see the Locations tab. An entry is added in the tab if you deploy your self-hosted PoP.

If you are unable to see Synthetic Monitoring in the navigation menu, see Setting permissions for Synthetic monitoring. For more information on Synthetic monitoring in the Instana UI, see Using the user interface.

You can monitor endpoints by creating and managing Synthetic tests and Smart Alerts for such tests. For more information about monitoring endpoints, see Monitoring endpoints with Synthetic tests.

Synthetic monitoring is integrated with some other capabilities of Instana. For more information, see Instana integration.

Setting permissions for Synthetic monitoring

Before you set the permissions for Synthetic monitoring, familiarize yourself with the requirements for securing Synthetic tests; see Securely using Synthetic test scripts.

To set the permissions for Synthetic monitoring, log on to Instana UI with a user ID that has the Owner level permissions. Alternately, you can ask another user with Owner permissions to give you the permissions for Synthetic monitoring. For more information about setting permissions to use Synthetic monitoring, see Permissions for Synthetic monitoring.

Deploying PoP

On Instana SaaS 269 and later, you can run tests by using a self-hosted PoP or an Instana-hosted PoP. You need to choose the type of PoP to run the tests. Additional charges apply for using an Instana-hosted PoP. No additional charges apply for using a PoP that you deploy. Point of Presence (PoP): A PoP is an agent where Synthetic tests are run. When the PoP is deployed, it registers itself with the Instana backend as a 'location'. Deployment implies the PoP and the Synthetic test configuration implies the 'location' configuration.

Datacenter: The representation of geographic regions where Instana-hosted PoPs are supported.

Activation: The activation represents deploying and managing a Synthetic PoP in a selected data center for a tenant unit. You must initiate the activation on the Synthetic Monitoring page on the Instana UI.

Instana 269 and later support two types of PoPs and corresponding locations.

Determine whether you require a self-hosted PoP or an Instana-hosted PoP for Synthetic monitoring.

Deploying a self-hosted PoP

You can deploy a PoP in your establishment; it is known as the self-hosted PoP (or private PoP). On Instana self-hosted, you must use a self-hosted PoP.

A self-hosted PoP is deployed in your private network. You can deploy, maintain, and manage the PoP to run tests. It is included as part of your Instana license. You can use a self-hosted PoP for the following purposes:

  • Monitor applications that are not publicly available
  • Run the tests from your own specific locations or offices

To use a self-hosted PoP, complete the following steps:

  1. Prepare the environment to run the PoP.
  2. Download Helm charts.
  3. Deploy PoP. Install an Instana agent on the same Kubernetes cluster where you deploy the PoP. For more information, see Deploying a self-hosted PoP.

After the PoP is deployed, it registers with the server as a Private location. If the Private location does not appear or you get an empty response in the OpenAPI, you can check the logs of the PoP controller. For more information, see PoP Deployment troubleshooting. To deploy a self-hosted PoP, see Deploying a Self-hosted PoP.

Deploying an Instana-managed PoP

An Instana-hosted PoP is a managed PoP. On Instana SaaS, you can use a PoP provided by Instana, known as the Instana-hosted PoP. Instana-hosted PoP registers with the server as a Managed location. The Instana-managed PoP is supported only on Instana SaaS.

On Instana SaaS, you can deploy a self-hosted PoP or update your license to gain access to an Instana-hosted PoP.

A Instana deploys, maintains, and manages the PoP to run tests. It is an add-on to your Instana license with additional fees. You can use an Instana-hosted PoP to monitor applications that are publicly available. To use Instana-hosted PoP, see Using an Instana-hosted PoP.

To use an Instana-hosted PoP, complete the following steps:

  1. Update your license. Contact IBM Sales to update the license.
  2. After the license is updated, go to Synthetic Monitoring and initiate a request to deploy an Instana-hosted PoP for using with your tenant unit.
  3. Complete the steps that are covered in Using an Instana-hosted PoP.

After a PoP is deployed either by you or by Instana, you can check the Locations tab in the Instana UI to confirm that the PoP location is successfully registered. You can also use the Open APIs to confirm whether the PoP location is registered.

It might take a few minutes for each queued activation request to process before the managed location appears. If the location does not appear after 10 minutes, open a support case for IBM Support to investigate the status of the deployment.

After the location is registered, you are ready to create Synthetic tests. You can either click Add > Add Synthetic Test in the Instana UI or use the Open APIs to create your Synthetic tests. Creation of the Synthetic test includes specifying how frequently the test will run and the location where it runs.

For more information about how to write scripted API (HTTPScript) tests, see the API Script documentation.

For more information about how to write a scripted browser test, see the Browser Script document.

For more information about the Open APIs for Synthetic monitoring, see the Synthetic Monitoring section of the Open API documentation. All the views that you can see that in the Instana UI can also be retrieved by using the Open APIs.

Synthetic tests

A Synthetic test is code that you write that simulates the way that your end-users use your applications. You can create Synthetic tests to monitor an application.

The Synthetic monitoring test types are covered in the following table:

Test type Description
API Simple test A simple test that checks the availability of your website's API endpoints. The test to check a single REST API. An HTTP GET request is sent to a URL to confirm that it is responsive. The test fails if the return code is not in the range of HTTP return codes.
API Script test A scripted test that imitates user interactions with your website's API endpoints. It's a test to check the sequence of multiple REST APIs. Multiple API requests are sent to an application to confirm that the responses are expected. The return codes and the content of the response are evaluated.
For guidance about writing an API Script Synthetic test, see the API Script Guide.
Browser Simple test A simple test that check a single webpage for HTTP errors by using a browser.
Browser Script test A scripted test that imitates user interactions with your website to check for HTTP errors by using a browser. It's the test to check web applications. The actions that users take on your web pages are simulated. Browser Script tests include Node.js-based browser scripts or Selenium IDE scripts.
SSL Certificate test a test to check whether the certificate for a web server is approaching expiration. Set the number of days before certification expiration when you want to be notified by a test failure.
  • Instana browser testing is supported for Synthetic PoP Helm chart 1.0.15 or later. A new playback engine is used to run these tests. You must upgrade your Synthetic PoP version to 1.0.15 or later to enable the browser playback engine. Instana browser testing supports Browser Simple test and Browser Script test. For more information, see Browser Script document.

You can configure tests to run on a Point of Presence (PoP) that you deploy or a PoP provided by Instana.

Determine the type of PoP you want to use, create a Synthetic test through the Instana UI or Open APIs, and assign the test to the location that represents the Synthetic PoP.

Synthetic test result data is retained in the Instana backend for 60 days.

To ensure security for your Synthetic tests, see the instructions in Setting permissions for Synthetic monitoring and Securely using Synthetic test scripts.

After the Synthetic test is created and assigned to one or more 'locations' with a specified frequency, the PoP runs the test on the requested schedule. For each run, the PoP sends the results of the test to the Instana backend as a Synthetic test result. Each test result might include some additional details, such as logs or subtransactions. Additional details are not available for every test type. If details are available, the information is sent to the Instana backend separately as Synthetic test result details. In the Summary tab, each Synthetic test has a result for each run, and each test result might contain additional details.

By using the Open API, you can create API Simple tests that use additional HTTP methods such as GET, HEAD, OPTIONS, PATCH, POST, PUT, and DELETE. Test creation in the Instana UI supports only the GET method.

You can use the synctl CLI commands to manage Synthetic tests, locations, and credentials. For example, you can create a Synthetic test by using a CLI command. For more information, see the Readme file.

When you see that your Synthetic test is running as expected, and Synthetic test results are sent to the Instana backend, you might want to create an alert that indicates whether the test failed. For information and instructions about creating alerts for Synthetic tests, see Smart Alerts for Synthetic monitoring.