Synthetic monitoring on RPA

Charith Wickramasinghe.
5 min readMar 21, 2021

Infrastructure monitoring is a key element when it comes to robotic process automation since most of the RPA processes are scheduled processors it's important to monitor the server availability before or during the process execution. Since Uipath, Automation Anywhere and PowerAutomate control centers are browser-based, Browser-based synthetic monitoring is a good option for a server monitoring platform integration.

Browsers Synthetic Monitoring uses geographically distributed Synthetic Agents to continuously test key user workflows in your application. This allows you to monitor the correctness and performance of multi-step flows independently of the user-generated load.

There are two ways of using Synthetic:

  1. Scheduled jobs:
    Use this to test your pages on a recurring basis to ensure they continue to perform well. Upload a Python WebDriver script to exercise multi-step workflows. Using this feature requires a Synthetic Pro license. See Browser Synthetic Licenses for more information.

2. On-demand snapshots:
Use this to collect performance data right now. This is useful for ad-hoc analysis. This feature is available with both Synthetic Lite and Pro licenses.

There are two deployment types for Synthetic Agents:
1. Synthetic Hosted Agents:
AppDynamics hosts these Synthetic Agents. This deployment is recommended for testing public websites.

2. Synthetic Private Agents:
You install and host Synthetic Agents on your machines. This enables you to test internal sites and services.

For synthetic monitoring, we can use several tools like Dynatrace or Zabbix.
This article will illustrate how dynatrace implements server monitoring on RPA processes. In synthetic monitoring, we can use browser click path events integrate with orchestrator on this.

Browser clickpath events

When you record a browser clickpath, your interactions with your web application are captured as a series of events. There are different event types to simulate interaction and control the click path, for instance, navigating to a URL, a click, selecting an option, entering information, or a JavaScript snippet. Besides the type, events have different properties, like the target (consisting of locators to identify web elements on a page) and the wait strategy.

Browser click path event types and their properties are described below. Click path events are editable during initial configuration or at any point later in edit mode in monitor settings (see the images below). You can edit, reorder, delete, and add events.

Navigate

The Navigate event simulates entering a URL in the address bar of a browser and then loading the page. Single-URL browser monitors comprise a single Navigate event.

In recorded click paths, the first event is automatically created as a Navigate event. The initial Navigate event of a click path cannot be deleted or reordered. You can insert a Navigate event into your recorded click path by selecting Add synthetic event and choosing the appropriate event it should follow.

Basic authentication

You can automate signing in to the specified URL using basic authentication — Enable basic authentication.

Dynatrace stores and manages all Synthetic Monitoring credentials in a credential vault. Credentials are access controlled and can be designated as “owner only” or “public.” You can choose an existing credential (Select credentials). You can only see the credentials that you have access to in this list, that is, public credentials or owner-only credentials created by you.

You can create new credentials by entering a Username and Password. Provide a name for the credential and Save it to the vault. The credentials you create this way are automatically set to owner-only permissions and can only be used by you.

Note that you must have permission to access the credential vault in order to create credentials in script or UI mode in a browser monitor in this way. You can always capture entered credentials as part of a recorded click path.

Synthetic Replication Steps- UiPath Orchestrator.

Test-1: RPA UiPath Orchestrator Prod (Test frequency — 15 mins)

  • Step 1: Navigate to — https://xxxxxxxxx.com/
  • Step 2: Wait for page load and check for the “Orchestrator” string

Test-2: RPA UiPath Orchestrator — Unresponsive Robots (Test frequency — 15 mins)

  • Step 1: Navigate to — https://xxxxxxxx.com/account/login
  • Step 2: Wait for page load and click on below windows Icon
  • Step 3: Authenticate using UN: Dynatrace_Synthetics@xxx.com | PW :
  • Step 4: Click on “RPA_XX” tenant
  • Step 5: Click on “ROBOTS” from the left navigation pane
  • Step 6: Click on the filter icon (next to search icon)
  • Step 7: Click on the “Status” drop-down and select “Unresponsive”
  • Step 8: Verify “no data to show” string is displayed.

Test-7: RPA UiPath Orchestrator — Dev (Test frequency — 15 mins)

  • Step 1: Navigate to — https://xxxxx.com
  • Step 2 : Check for response HTTP status code < 400

Performance Analysis

Actions per min, Action duration, Apendex rating, errors, 3rd party providers, and services behavior will show in this window.

Conclusion

Instrasture monitoring is a key element in any automation project since processes are executed without any human intervention. Therefore monitor the existing server architecture as well as bot behavior is an important element for smoother execution of a process. Because there no inbuilt options for any RPA vendor to monitor the bot behavior in the server architecture.

This will helps support team to attend to the issues before it occurs. furthermore, this will analyze scenarios like

Memory Critical threshold (%) — 80% warning, 90% Critical
Memory Warning threshold (%) — 80% warning, 90% Critical
CPU Critical threshold (%) -80% warning, 90% Critical
CPU Warning threshold (%) 80% warning, 90% Critical
Disk Critical threshold (%) -80% warning, 90% Critical
Disk Warning threshold (%) — 80% warning, 90% Critical

Monitoring can be done by the application like Dynatrace or Zabbix. and if you are maintaining a separate support team who woking on a roster basis, you can align these tools with pager duty or big panda tools to getting the notification for the given time frame.

--

--

Charith Wickramasinghe.

Experienced Lead Robotic Process Automation engineer with a demonstrated history of 7+ working in the industry with the US, UK, Middle East, and Sweden Clients.