Create a private Synthetic location
You can run your Dynatrace synthetic monitors from a private Synthetic location, which is a location in your private network infrastructure where you install one or more Synthetic-enabled ActiveGate instances.
With monitors executed from a private location, you can bring the testing capabilities available in public locations right into your own environment. With private locations you can:
- Measure internal web page performance and availability.
- Measure complex internal applications with browser clickpath monitors.
- Measure external resources with synthetic monitors run from internal locations.
- Monitor APIs, both internal and external.
Private Synthetic locations support all types of Dynatrace synthetic monitors.
System and hardware requirements for private locations
Make sure the machine you plan to use for running private synthetic monitors complies with system and hardware requirements for private Synthetic locations. Note that Synthetic-enabled ActiveGates have more demanding hardware and system requirements than a regular Environment or Cluster ActiveGate.
Specifically for Synthetic-enabled ActiveGate installed on Ubuntu 20.04 LTS and 22.04 LTS, write access to the /tmp
directory is required for the installation of Chromium snap packages.
As Chromium development for Ubuntu 16.04 stopped at version 90, we can no longer assure a high enough level of stability and security for synthetic monitor execution on Ubuntu 16. We have discontinued our support for installing Synthetic-enabled ActiveGate on Ubuntu 16 after ActiveGate version 1.251. That is, ActiveGate version 1.251 is the last Synthetic-enabled ActiveGate supported on Ubuntu 16.
With Dynatrace version 1.254, Synthetic-enabled ActiveGates on Ubuntu 16 can no longer be updated.
Before you begin
- You cannot execute synthetic monitors using an Environment ActiveGate that's configured for multi-environment support.
-
You can create a private location using a clean-installed Synthetic-enabled Environment ActiveGate version 1.169+ or Cluster ActiveGate with Dynatrace Managed version 1.176+. If you want to use an existing ActiveGate host, uninstall ActiveGate first.
-
The Synthetic-enabled ActiveGate is used exclusively to run synthetic monitors. A clean ActiveGate installation for the purpose of synthetic monitoring disables all other ActiveGate features, including communication with OneAgents.
-
Make sure the ActiveGate can connect to other Dynatrace components as well as the resource you want to test. See Set up a proxy for private synthetic monitoring.
-
Only IPv4 and DNS UDP are supported for network configuration.
-
The Synthetic-enabled ActiveGate needs access to the Amazon S3 service to upload and access browser monitor screenshots from private locations. Ensure that your firewall configuration allows connections to
*.s3-accelerate.amazonaws.com
on port443
. You can also set up your proxy to connect to the Amazon S3 service.For new Dynatrace Managed version 1.216+ installations, screenshots are stored and served locally from the Dynatrace Cluster. For other Managed offline deployments, you will not be able to save screenshots.
If you plan to install Chromium and dependencies manually, ensure access to
https://synthetic-packages.s3.amazonaws.com
. For security reasons, public access to the S3 bucket is enabled only for specific files; trying anything else will result in a 403 error.
Install a Synthetic-enabled ActiveGate
A Synthetic-enabled ActiveGate is used exclusively to run synthetic monitors. A clean ActiveGate installation for the purpose of synthetic monitoring disables all other ActiveGate features, including communication with OneAgents. Make sure the host on which you install the ActiveGate has access to the internet.
If this web UI-guided installation fails, or you prefer to prepare the host for the Synthetic engine yourself, you can manually install Chromium and other dependencies via S3. You can also install Chromium from a custom, local repository.
-
For Environment ActiveGate, from the Dynatrace menu, go to Deploy Dynatrace > Install ActiveGate. For Cluster ActiveGate, go to the Dynatrace Cluster Management Console and select More
> Add new Cluster ActiveGate.
-
Select the operating system and follow the instructions displayed.
-
Create a PaaS Token or enter an existing token. This token has the Download OneAgent and ActiveGate installers
InstallerDownload
token scope, which allows you to download the ActiveGate installer. Once provided, the token is automatically appended to download and installation commands, which are then displayed in the UI.Note
You can find existing tokens listed on the Access tokens page. Note that a PaaS token is only displayed once upon creation, after which it's stored encrypted and cannot be revealed. We recommend that you store a PaaS token after creation in a password manager so that you can reuse it as needed.
-
For Choose installer type, keep the default selection:
x86/64
.
-
For What's the purpose of this ActiveGate?, select Run synthetic monitors from a private location.
-
optional Assign the ActiveGate to a private Synthetic location—select a location from the dropdown list. You can also assign the ActiveGate to a location after installation.
-
Download the installer, providing your PaaS token if necessary.
-
Linux only Select a Linux distribution.
-
Run the installer and any other commands—make sure you use the exact commands displayed in the UI.
Linux only The installer automatically downloads Chromium and the dependencies required by the Synthetic engine. On RedHat, CentOS, and Amazon Linux 2, you also need to enable repositories from which the installer downloads the dependencies. The web UI provides you with all the required commands for doing so, as shown in the example below:
-
Verify the ActiveGate installation (Show deployment status).
Add a private location
-
From the Dynatrace menu, go to Settings > Web & mobile monitoring > Private synthetic locations.
-
Select Create location.
-
Give your location a custom Name, for example
Boston office, 3rd floor
. -
Map it from an existing geographic location or add a custom geographic location defined by Country, Region, City, and Geographic coordinates.
-
Add a Synthetic-enabled ActiveGate to the location. Note that an ActiveGate can only be assigned to a single location.
You can also leave the location temporarily unassigned and assign it during the ActiveGate installation process.
-
Select Add.
-
Select Save.
Dynatrace Managed only
Use the Cluster API v2 to create a location and assign a Cluster ActiveGate to it.
-
Use the GET all nodes method to list all the Synthetic-enabled Cluster ActiveGates in your environment. Among other parameters, you'll retrieve the host IP address and the
entityId
in the response. For example:{ "nodes": [ { "entityId": "3086117876", "hostname": "gdn.dyna.trace", "ips": [ "238.245.160.14" ], "version": "1.175.0.20181210-173639", "browserMonitorsEnabled": true } ] }
-
Use the POST a location endpoint to create a new location and assign a Synthetic-enabled Cluster ActiveGate to it. Note that an ActiveGate can only be assigned to a single location. Use the
entityId
you received in the previous step as one of the values fornodes
and settype
toCLUSTER
. See an example of a request body for thePOST
call:{ "type": "CLUSTER", "name": "Dynatrace Gdansk Lab", "countryCode": "PL", "regionCode": "PL82", "city": "Gdansk", "latitude": 54.3990, "longitude": 18.5766, "nodes": [ "3086117876" ] }
If your call is successful, you'll receive a
200
OK response.
Create a synthetic monitor
Now, when you create your HTTP or browser monitor, select the location you've just created from the list of all available locations. For more information, see Create an HTTP monitor, Create a single-URL browser monitor, or Record a browser clickpath.
Linux only Install Chromium and dependencies manually from S3
If the web UI-guided installation fails or you prefer to prepare the host for the Synthetic engine yourself, you can install Chromium and other dependencies using the procedure below. Ensure that you can connect to https://synthetic-packages.s3.amazonaws.com
to access Chromium and dependencies. For security reasons, public access to the S3 bucket is enabled only for specific files; trying anything else will result in a 403 error.
Also see Install Chromium from a custom repository below.
See how to update Chromium manually in Manage private Synthetic locations. We strongly recommend that you keep your Linux-based Synthetic-enabled ActiveGates and Chromium versions updated—Dynatrace supports Chromium versions that are no more than two versions behind the latest Dynatrace-supported version for a specific ActiveGate release.
Ubuntu Server
Notes
- Chromium development for Ubuntu 16.04 stopped at version 90.
- ActiveGate version 1.251 is the last Synthetic-enabled ActiveGate supported on Ubuntu 16.
-
Install Synthetic engine dependencies:
Synthetic engine dependencies:
sudo apt-get update && sudo apt-get -y install xvfb x11-xkb-utils xfonts-100dpi xfonts-75dpi xfonts-scalable
Chromium dependencies:
sudo apt-get -y install libasound2 libatk-bridge2.0-0 libatk1.0-0 libc6:amd64 libcairo2 libcups2 libgdk-pixbuf2.0-0 libgtk-3-0 libnspr4 libnss3 libxss1 libwayland-server0 libgbm1 xdg-utils
Synthetic engine dependencies:
sudo apt-get update && sudo apt-get -y install xvfb x11-xkb-utils xfonts-100dpi xfonts-75dpi xfonts-scalable
Chromium dependencies:
sudo apt-get -y install fonts-dejavu-core
sudo snap install gnome-3-38-2004 gtk-common-themes
-
Download and install Chromium.
-
Download the deb (Ubuntu 16.04 and 18.04) or snap (Ubuntu 20.04 and 22.04) package archive. This is a safe and verified archive hosted by Dynatrace.
You can verify the authenticity of the packages using the signature files stored together with the package archives.
-
Extract the installation packages. Go to the directory where you saved the archive and run the following command:
mkdir /tmp/chromium ; tar xzf chromium.tgz -C /tmp/chromium
This creates a
/tmp/chromium
directory and extracts the packages into it. -
Install the extracted packages.
sudo dpkg -i /tmp/chromium/*.deb
sudo snap ack /tmp/chromium/chromium.assert
sudo snap install --devmode /tmp/chromium/chromium.snap
This installs all the packages extracted to the
/tmp/chromium/
directory. You can delete the/tmp/chromium/
directory and the downloadedchromium.tgz
archive after successful Chromium installation.
-
-
Ubuntu 16.04 and 18.04 only Disable automatic update of Chromium packages.
Note that for Ubuntu 20.04, autoupdate is disabled as part of the installation command in Step 2 above.
echo "chromium-browser hold" | sudo dpkg --set-selections echo "chromium-codecs-ffmpeg-extra hold" | sudo dpkg --set-selections
-
After you satisfy the dependencies, run the ActiveGate installer with root rights with the
--enable-synthetic
parameter set tomanual
. For example:/bin/sh ./Dynatrace-ActiveGate-Linux.sh --enable-synthetic=manual
Red Hat Enterprise Linux and CentOS
-
Set up repositories.
- Register the Red Hat instance.
sudo subscription-manager register --auto-attach
- Enable the Red Hat
Extras
andOptional
repositories as well asEPEL
(Extra Packages for Enterprise Linux ).sudo subscription-manager repos --enable rhel-7-server-extras-rpms sudo subscription-manager repos --enable rhel-7-server-optional-rpms sudo rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
- Register the Red Hat instance.
sudo subscription-manager register --auto-attach
- Enable the Red Hat
Extras
andOptional
repositories as well asEPEL
(Extra Packages for Enterprise Linux ).sudo subscription-manager repos --enable rhel-8-for-x86_64-baseos-rpms sudo subscription-manager repos --enable rhel-8-for-x86_64-appstream-rpms sudo rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
- Enable
EPEL
(Extra Packages for Enterprise Linux ).sudo yum install epel-release
- Register the Red Hat instance.
-
Install Synthetic engine dependencies.
sudo yum install -y xorg-x11-server-Xvfb xorg-x11-xkb-utils xorg-x11-server-utils xorg-x11-fonts-100dpi xorg-x11-fonts-75dpi xorg-x11-fonts-Type1 libwayland-server mesa-libgbm curl
-
Download and install Chromium.
-
Download the rpm package archive. This is a safe and verified archive hosted by Dynatrace.
You can verify the authenticity of the packages using the signature files stored together with the package archives.
-
Extract the installation packages. Go to the directory where you saved the archive and run the following command:
mkdir /tmp/chromium ; tar xzf chromium.tgz -C /tmp/chromium
This creates a
/tmp/chromium
directory and extract the packages into it. -
Install extracted packages.
sudo yum install -y /tmp/chromium/*.rpm
This installs all the packages extracted to the
/tmp/chromium/
directory. You can delete the/tmp/chromium/
directory and the downloadedchromium.tgz
archive after successful Chromium installation.
-
-
Disable automatic update of Chromium packages:
sudo yum -y install yum-plugin-versionlock sudo yum versionlock chromium sudo yum versionlock chromium-common
-
optional Install non-Latin TrueType fonts:
sudo yum install dejavu-fonts-common.noarch dejavu-sans-fonts.noarch
-
After you satisfy the dependencies, run the ActiveGate installer with root rights with the
--enable-synthetic
parameter set tomanual
. For example:/bin/sh ./Dynatrace-ActiveGate-Linux.sh --enable-synthetic=manual
Linux only Install Chromium from a custom repository
ActiveGate version 1.243+ In addition to web UI-guided ActiveGate installation and manual installation of Chromium and dependencies, you can also install ActiveGate by pointing to a custom, local repository for Chromium components. As this repository is an HTTP server that you set up within your network, the advantage of this method is that it can be used in environments with intranet-only or limited network access.
This method of installing Chromium broadly consists of:
- Downloading the required Dynatrace-hosted deb, snap, or rpm package archives and their corresponding signature files.
- Installing and running a locally hosted web server where the downloaded Chromium components reside.
- Downloading and running the ActiveGate installer on a host machine with an environment variable pointing to the location of the custom repository on the HTTP server.
Important
- A custom Chromium repository can be used only for Chromium components, not their dependencies. Installing Chromium from a custom repository will only work if all dependencies have been resolved before installation.
- Custom repositories can only be used for Chromium installation and autoupdate—see Chromium autoupdate from a custom repository in Manage private Synthetic locations for details.
-
Download the Chromium components—the package archive and signature file—from the safe and verified archive hosted by Dynatrace. See Requirements for private Synthetic locations for links to the latest supported and provided Chromium versions.
We recommend keeping your Linux-based Synthetic-enabled ActiveGates and Chromium versions up to date; choose the latest provided Chromium version for ActiveGate.
For example, for ActiveGate version 1.255 on Ubuntu 22. the required files are:
- Package archive—
https://synthetic-packages.s3.amazonaws.com/Chromium/snap/chromium-107.0.5304.87-2168.tgz
- Signature file—
https://synthetic-packages.s3.amazonaws.com/Chromium/snap/chromium-107.0.5304.87-2168.tgz.sig
The corresponding download commands are:
curl -o chromium-107.0.5304.87-2168.tgz https://synthetic-packages.s3.amazonaws.com/Chromium/snap/chromium-107.0.5304.87-2168.tgz
curl -o chromium-107.0.5304.87-2168.tgz.sig https://synthetic-packages.s3.amazonaws.com/Chromium/snap/chromium-107.0.5304.87-2168.tgz.sig
- Package archive—
-
Install a web server of your choice and create a directory, for example,
chromium-repo
, to serve the Chromium components to the ActiveGate host. Copy the downloaded Chromium components to this directory. -
Download the ActiveGate installer from the Deploy Dynatrace page of your Dynatrace environment.
-
Resolve all dependencies and enable repositories as required as shown in Install Chromium and dependencies manually from S3 above. The custom repository can be used only for Chromium packages, not their dependencies.
-
Install the ActiveGate with the Synthetic module enabled (
--enable-synthetic
) and theDYNATRACE_SYNTHETIC_CUSTOM_CHROMIUM_REPO
environment variable pointing to the location of the custom repository (https://172.18.0.100/chromium-repo
in this example).sudo DYNATRACE_SYNTHETIC_CUSTOM_CHROMIUM_REPO=http://172.18.0.100:8000/chromium-repo /bin/bash Dynatrace-ActiveGate-Linux-x86-1.257.0.20221129-155835.sh --enable-synthetic
You can use the hostname of the HTTP server instead of the IP address so long as the ActiveGate host can resolve the hostname.
Once you've installed Chromium in this way from a custom repository, it can only be autoupdated. See Chromium autoupdate from a custom repository in Manage private Synthetic locations for details and update alternatives.
Custom Chromium version
You can install a custom Chromium version, that is, override the Chromium version that the ActiveGate installer looks for. This is applicable for manual ActiveGate installation, as described in Chromium installation via S3 or via a custom repository.
In this command for manual ActiveGate installation via S3, an environment variable points to an explicit Chromium version number 107.0.5304.87-2168
, which is part of the package archive for Ubuntu 20 or 22.
sudo /bin/sh -c "export DYNATRACE_SYNTHETIC_EXPLICIT_CHROMIUM_VERSION=107.0.5304.87-2168; /bin/bash Dynatrace-ActiveGate-Linux-x86-1.257.0.20221129-155835.sh --enable-synthetic"
This command searches for the Chromium version 107.0.5304.87-2168
in the custom repository https://172.18.0.100/chromium-repo
.
sudo DYNATRACE_SYNTHETIC_EXPLICIT_CHROMIUM_VERSION=107.0.5304.87-2168 DYNATRACE_SYNTHETIC_CUSTOM_CHROMIUM_REPO=http://172.18.0.100:8000/chromium-repo /bin/bash Dynatrace-ActiveGate-Linux-x86-1.257.0.20221129-155835.sh --enable-synthetic