This page describes how to configure the Web Monitoring PSA and API Monitoring PSA.

In-Script Metadata Configuration

When you run Synthetic Jobs as scripted measurements, you can specify certain configuration options using in-script metadata. You must include these yaml based configurations at the beginning of the script in the form of a comment block.

Set Custom User Agent for Synthetic Scripts

To modify the default browser specific user-agent header to a custom user-agent header, add this in-script metadata at the beginning of the Synthetic script:

'''yml
requestHeader:
  userAgent: "custom user agent"
'''
driver.get('http://127.0.0.1:20000/green.html')
CODE

Include Synthetic Traffic in Browser RUM Traffic

The user-agent request headers in the Synthetic scripts are tagged so that the requests are not included in Browser RUM pages. You can set tagUserAgent to false to include the Synthetic traffic in the Browser RUM pages.

Enter the following in-script metadata at the beginning of the Synthetic script:

'''yml
requestHeader:
  userAgent: "custom user agent"
  tagUserAgent: false
'''
driver.get('http://127.0.0.1:20000/green.html')
CODE

Kubernetes Configuration

After you set up the Kubernetes cluster, push the images to the Docker registry, and deploy the Web Monitoring PSA or API Monitoring PSA using sum-psa-heimdall.tgz Helm chart, a values.yaml file is generated. Use the values.yaml file to dynamically configure the values while deploying the Web Monitoring PSA and API Monitoring PSA. 

Key-Value Pairs Configuration

You can replace the optional configuration values in the values.yaml file with the values in the table:

ConfigurationKey-Value PairDescription
Heimdall replica countheimdall > replicaCountIndicates the Heimdall replica count.
Heimdall Resource allocations
  • heimdallResources > min_cpu
  • heimdallResources > max_cpu
  • heimdallResources > min_mem
  • heimdallResources > max_mem
Indicates the Heimdall Resource allocation.
Measurement Container Resource allocations 

Web Monitoring PSA:

  • chromeAgentResources > min_cpu
  • chromeAgentResources > max_cpu
  • chromeAgentResources > min_mem
  • chromeAgentResources > max_mem

API Monitoring PSA:

  • apiMonitoringAgentResources > min_cpu
  • apiMonitoringAgentResources > max_cpu
  • apiMonitoringAgentResources > min_mem
  • apiMonitoringAgentResources > max_mem
Indicates the measurement container resource allocations.
Postgres DB Resource allocations 
  • postgresResources > min_cpu
  • postgresResources > max_cpu
  • postgresResources > min_mem
  • postgresResources > max_mem
Indicates the Postgres DB resource allocations.
Custom Postgres DB
  • postgres > enable to false
  • databaseConfig >
To set up Postgres DB instance and to configure Heimdall to connect to the DB instance, ensure that the DB is running in the same namespace as Heimdall (measurement namespace).
Logging level logging > level to ERROR, WARN, INFO, DEBUG, or TRACEIndicates the logging level. The default value is DEBUG.
Node selectors 
  • heimdallNodeSelector > 
  • agentNodeSelector > 
Apply Node selectors for Heimdall and measurement containers to schedule these components on specific nodes.
Proxy

Heimdall:

   heimdall:
    enabled: false
    server: "<proxy server address>"

Web Monitoring PSA:

  browserMonitoringAgent:
    enabled: false
    server: "<proxy server address>" 

API Monitoring PSA:

  apiMonitoringAgent:
    enabled: false
    server: "<proxy server address>"

Configure the PSA to use a proxy for all requests leaving the cluster. Set the enabled field to true and specify the proxy server address in the server field in this format:

<scheme>://<hostname>:<port>

You can configure the same proxy server for all components or different proxy servers for each component.

Connect Agent to the Synthetic Server

When deploying the Web Monitoring PSA or API Monitoring PSA in the Kubernetes cluster, you must specify the agent registration information in the values.yaml file. Heimdall uses this information to register itself with the Synthetic Server. Once registered you can view the agent in the Controller and run measurements. 

Shepherd URL

To connect the agent to a hosted Synthetic Cloud region, enter one of these shepherd URLs in the values.yaml file:

To connect the agent to your on-premises Synthetic Server, enter the shepherd URL (http://<on-premises-synthetic-server-host>:10101) in the values.yaml file.

On-premises Synthetic Server versions >= 21.4.1 are supported. If you are on an older version, you must upgrade Synthetic Server to connect to the Linux-based PSA.

EUM Account and License Key

To connect the agent to the Controller, you need the EUM account and license key.

Follow the given steps to obtain this information:

  1. Navigate to the SaaS Controller.
  2. Click the settings icon at the top-right corner to navigate to License > Account Usage.
  3. Scroll down to the User Experience section.
    Enter Account Name and License Key in the values.yaml file.

    Configuration KeyConfiguration Value
    shepherd > credentials > eumAccountAccount Name
    shepherd > credentials > eumKeyLicense Key

Location Information

To identify the location of the agent, enter the following shepherd > location details in the values.yaml file:

  • name - A user-friendly string for the location.

  • code - A unique alphanumeric string with four to ten characters which identifies the location where the agent is running. You must create this ID based on the location name.

  • latitude, longitude - Navigate to the GPS Coordinates with Google Maps to get the latitude and longitude of your location.