Learn about the WPM Player configuration file
Changes to WPM Player can be made in the AgentSettings.dat
, located at: %ProgramData%/Solarwinds/SEUM/Data/
.
This file will be automatically created during the first run of SolarWinds WPM Playback Player and will not be recreated nor removed during product upgrades. If you uninstall WPM, the AgentSettings.dat
file will be removed during the uninstall process.
However, if any custom changes were made before upgrading WPM Player, you will need to manually upgrade/migrate the content of the config.yaml
file and SolarWinds.SEUM.Agent.Service.exe.config
file properties to AgentSettings.dat
.
Player configuration settings
AgentSettings.dat
includes the following customizable settings.
Other settings in the AgentSettings.dat
file that are not listed below are set by the WPM Player and should not be changed.
settings
The number of worker process that can be run by the WPM Player. For SolarWinds Platform servers, the default value is 2. For non-SolarWinds Platform servers, the default is 7. You can add up to 15 WPM Player service accounts; however, SolarWinds recommends using seven accounts during playback. The limit of accounts on a player depends on the power of the host system (CPU, RAM, and so on). More than seven accounts can consume too much CPU and RAM, resulting in poor performance.
numberOfWorkerProcesses="7"
The number of users listed depends on the number specified in the numberOfWorkerProcesses above. Existing users will not be automatically removed if the numberOfWorkerProcesses is reduced, because there is no way to restore the password if you increase the number again later.
<users> <user id="1" password="encrypted_password" /> </users>
domainConfiguration
Specifies whether the player uses domain accounts. By default, this is set to false, indicating the player will use local accounts.
<domainConfiguration enabled="false" />
<domainConfiguration enabled="true" domain="customer_domain_name_goes_here" > <domainAccount username="example_username-1" password="example_password-1" /> </domainConfiguration>
workerConfiguration
probeConfiguration
The number of seconds the playback should take. If the playback passes the specified value, the WPM worker stops and playback fails. The default and recommended value is 330 seconds.
playbackTimeout="330"
The similarity ratio of the image match action. The default value is 0.99 but the value can be set between 0-1. For more information, see Use Image Match in the WPM recordings and Image Classification using SSIM.
imageMatchSimilarityFactor="0.99"
The number of pixels where the image match action will stop scrolling horizontally when attempting to find the image. The recommended maximum is 100.
imageMatchScrollXInterval="100"
The number of pixels where the image match action will stop scrolling vertically when attempting to find the image. The recommended maximum is 100.
imageMatchScrollYInterval="100"
The number of seconds the recorder will search for a page element requiring an action before timing out.
findElementTimeout="5"
The number of seconds the recorder will wait before trying again to find the page element.
findElementRetryInterval="0.5"
The number of seconds the recorder waits for the page to load after the initiating navigation to a page. The recommended value is 10 seconds.
pageReloadTimeout="10">
The number of seconds the recorder will attempt to execute JavaScripts on a website during playback. The recommended value is 30 seconds.
<chromeDriverConfiguration scriptExecutionTimeout="30" />
browserConfiguration
The lowest Transport Layer Security version. By default, the value is tls1.2, which is recommended version, but tls1.3 is also supported.
minTlsVersion="tls1.2"
Whether the recorder can interact with iFrame content. By default, the value is False. To allow the recorder to interact with iFrame content, change the value to True.
disableWebSecurity="false">
Used by the proxy feature, where the customer has a proxy server that requires the user to enter credentials during navigation to a page. Enter the credentials here.
<proxyTrustedHosts> <proxyTrustedHost hostname="HostName-1" username="example_username-1" password="example_password-1" /> <proxyTrustedHost hostname="HostName-2" username="example_username-2" password="example_password-2" /> .... <proxyTrustedHost hostname="HostName-N" username="example_username-N" password="example_password-N" /> </proxyTrustedHosts>
Command line switches passed directly to the main Electron script that modify the function of a command. For a complete list of available switches, see Supported Command Line Switches.
<electronSwitches> <switch>--disable-backgrounding-occluded-windows</switch> <switch>--disable-gpu</switch> </electronSwitches>
Command line switches passed to the WPM Player as command line process arguments that can modify the function of a command. For a complete list of available switches, see Supported Command Line Switches.
<electronProcessSwitches> <switch>--disable-backgrounding-occluded-windows</switch> <switch>--ignore-certificate-errors</switch> <switch>--disable-gpu</switch> </electronProcessSwitches>
Includes or excludes extensions from DefaultWellKnownFileExtensions
list, allowing for a change of what extensions can be found in the URL that the WPM Recorder will use to execute navigation. If the extension is found in the URL, the WPM Recorder will try to download the resource as a file instead of loading it in the browser. WPM includes a predefined list of MIME types as DefaultWellKnownFileExtensions
listed below.
DefaultWellKnownFileExtensions: [ "aac", "abw", "arc", "avif", "avi", "azw", "bin", "bmp", "bz", "bz2", "cda", "csh", "css", "csv", "doc", "docx", "eot", "epub", "gz", "gif", "ico", "ics", "jar", "jpeg", "jpg", "js", "json", "jsonld", "mid", "midi", "mjs", "mp3", "mp4", "mpeg", "mpkg", "odp", "ods", "odt", "oga", "ogv", "ogx", "opus", "otf", "png", "pdf", "ppt", "pptx", "rar", "rtf", "sh", "svg", "tar", "tif", "tiff", "ts", "ttf", "txt", "vsd", "wav", "weba", "webm", "webp", "woff", "woff2", "xls", "xlsx", "xml", "xul", "zip", "3gp", "3g2", "7z", // 'htm', 'html', 'xhtml', 'php', // excluded from original list "exe", "dll", "lib", "msi", "cert", // added manually "recording", "web-recording", // WPM extensions ];
For a full list of extensions, see Common MIME types.
<fileDownloadExtensions> <include> <extension>PDF</extension> <extension>JPEG</extension> <extension>ZIP</extension> </include> <exclude> <extension>PNG</extension> <extension>AVI</extension> <extension>RAR</extension> </exclude> </fileDownloadExtensions>
Example content of AgentSettings.dat
<?xml version="1.0" encoding="utf-8"?> <settings version=[Set by WPM Player] port=[Set by WPM Player] pass=[Set by WPM Player] isActive=[Set by WPM Player] mainServerIpOrHostname=[Set by WPM Player] orionUserName=[Set by WPM Player] orionPassword=[Set by WPM Player] useProxy=[Set by WPM Player] proxyUrl=[Set by WPM Player] useProxyAuthentication=[Set by WPM Player] proxyUserName=[Set by WPM Player] proxyPassword=[Set by WPM Player] agentName=[Set by WPM Player] updateEnabled=[Set by WPM Player] workerTimeoutS=[Set by WPM Player] certificateSecuredServicesPort=[Set by WPM Player] maxPlaybacksPerWorker=[Set by WPM Player] agentProxyPort=[Set by WPM Player] numberOfWorkerProcesses="7"> <users> <user id="1" password="encrypted_password" /> <user id="2" password="encrypted_password" /> <user id="3" password="encrypted_password" /> <user id="4" password="encrypted_password" /> <user id="5" password="encrypted_password" /> <user id="6" password="encrypted_password" /> <user id="7" password="encrypted_password" /> </users> <domainConfiguration enabled="false" /> <proxyTrustedHosts> <proxyTrustedHost hostname="HostName-1" username="example_username-1" password="example_password-1" /> <proxyTrustedHost hostname="HostName-2" username="example_username-2" password="example_password-2" /> </proxyTrustedHosts> <workerConfiguration> <probeConfiguration playbackTimeout="330" imageMatchSimilarityFactor="0.99" imageMatchScrollXInterval="100" imageMatchScrollYInterval="100" findElementTimeout="5" findElementRetryInterval="0.5" pageReloadTimeout="10"> <chromeDriverConfiguration scriptExecutionTimeout="30" /> </probeConfiguration> <browserConfiguration minTlsVersion="tls1.2" disableWebSecurity="false"> <proxyTrustedHosts /> <electronSwitches> <switch>--disable-backgrounding-occluded-windows</switch> <switch>--disable-gpu</switch> </electronSwitches> <electronProcessSwitches> <switch>--disable-backgrounding-occluded-windows</switch> <switch>--ignore-certificate-errors</switch> <switch>--disable-gpu</switch> </electronProcessSwitches> <fileDownloadExtensions> <include> <extension>PDF</extension> <extension>JPEG</extension> <extension>ZIP</extension> </include> <exclude> <extension>PNG</extension> <extension>AVI</extension> <extension>RAR</extension> </exclude> </fileDownloadExtensions> </browserConfiguration> </workerConfiguration> </settings>