Workspace Environment Management

Manage Basic Deployment agents

You can use Workspace Environment Management (WEM) to manage basic deployment agents. This feature provides a lightweight method to deploy WEM. You can use this deployment method for utilizing WEM basic functionalities easily without deploying the backend components such as broker, database and consoles.

Configuring the basic deployment agent settings

When WEM agent is in basic mode, some optimization features are enabled by default. These settings are stored in the pre-defined agent cache file.

  • CPU Spike Protection on VDA machines is automatically turned on. This setting lowers the priority of high CPU processes to minimize the impact on the user experience:

    • CPU spike protection
    • Automatically prevent CPU spikes
    • Enable intelligent CPU optimization
  • Customize the settings for basic deployment agent. For more information, see Configure group policies. The settings available for the basic mode are listed as follows:

Property Type Setting Default Example Note
enableCpuSpikeProtection boolean Enable CPU spike protection true true CPU spike protection settings
enableCpuAutoProtection boolean Automatically prevent CPU spikes true true  
cpuUsageLimitOfSpikeProtection float CPU usage limit (%) 70.0 70.0  
enablePerCoreCpuUsageLimit boolean Set limit relative to single CPU core false false  
perCoreCpuUsageLimitOfSpikeProtection float CPU usage limit relative to single CPU core (%) 80.0 80.0  
cpuUsageLimitSampleTimeOfSpikeProtection integer Sample time limit (sec) 30 30  
idlePriorityTimeOfSpikeProtection integer Idle priority time (sec) 180 180  
enableLimitCpuCoreUsage boolean Enable CPU core usage limit false false  
cpuCoreLimitOfSpikeProtection integer CPU core usage limit 1 1  
enableIntelligentCpuOptimization boolean Enable intelligent CPU optimization true true  
enableIntelligentIoOptimization boolean Enable intelligent I/O optimization false false  
excludeProcessesFromCpuSpikeProtection boolean Exclude processes from CPU spike protection false false  
processesExcludedFromCpuSpikeProtection array of strings Process names [] [ devenv, msbuild ]  
disableProcessPriorityInheritance boolean Prevent child processes from inheriting CPU priority false false  
parentProcessesToDisablePriorityInheritance array of strings Process names [] [ devenv, msbuild ]  
enableMemoryWorkingSetOptimization boolean Optimize memory usage for idle processes true true Memory optimization settings
idleSampleTimeOfMemoryWorkingSetOptimization integer Idle sample time (min) 30 30  
idleStateLimitOfMemoryWorkingSetOptimization integer Idle state limit (%) 1 1  
enableMemoryOptimizationThreshold boolean Restrict optimization true true  
memoryOptimizationThreshold integer Optimize only if total available memory is less than (MB) 200 200  
excludeProcessesFromMemoryWorkingSetOptimization boolean Exclude processes from memory usage optimization false false  
processesExcludedFromMemoryWorkingSetOptimization array of strings Process names [] [devenv, msbuild]  
enableFastLogoff boolean Enable fast logoff true true Fast Logoff settings
enableMultiSessionOptimization boolean Enable multi-session optimization true true Multi-session optmizations
excludeProcessesFromMultiSessionOptimization boolean Exclude processes from multi-session optimization false false  
processesExcludedFromMultiSessionOptimization array of strings Process names [] [ devenv, msbuild ]  
agentServiceDebugModeEnabled boolean Enable agent service debug mode false false Advanced settings > Agent settings > Agent service options
enableLogonDurationAnalysis boolean Enable logon duration analysis true true Logon duration analysis
useAlternativeLocalReportLocation boolean Use alternative location to save local agent reports false false  
alternativeLocalReportLocation string Alternative location to save local agent reports %PROGRAMDATA%\Citrix\WEM\Local Agent Reports D:\WEM Local Agent Reports  
localReportMaxDays int Max days for local agent reports to be kept 7 7  
localReportMaxFilesPerEvent int Max number of local agent reports to be kept 30 30  
saveLogonDurationAnalysisToLocal boolean Save logon duration analysis reports as local agent reports true true  
saveUpmHealthCheckToLocal boolean Save UPM health check reports as local agent reports true true  
saveProfileContainerInsightsToLocal boolean Save profile container insights reports as local agent reports true true  


If the custom settings are not configured or are invalid, the WEM agent uses the default settings.

You can specify a JSON formatted string to customize settings for basic deployment agent. For example:

    "enableCpuSpikeProtection": true,
    "enableCpuAutoProtection": true,
    "enableIntelligentCpuOptimization": true,

Custom settings for Basic Deployment

Switching the agent deployment type

To switch the deployment type, choose one of the following methods.

  • Utilize the agent group policies to switch the agent to another deployment type. For more information, see Configure group policies.

  • Use the WEM health check tool to switch to another deployment type.

Using the WEM Logon duration feature

The benefits of using the WEM Logon duration feature are as follows:

  • The WEM agent analyzes the logon duration and generates the report automatically when you log in to the agent machine.

  • You can use the WEM Tool Hub to check the agent-generated report.

Manage Basic Deployment agents