Skip to main content

Load Balancing Conditions

Load balancing Conditions can be used in several different VisualCron components:

Editing Load balancing Conditions

All Load balancing Conditions are created and edited using a single form consisting of two tabs.

On the first tab, the basic properties are configured: condition type and description.

On the second tab, properties specific to the chosen condition type are edited.

Depending on the condition type, the following property groups can be edited:

  • Server selector
  • Job selector
  • Connection selector
  • Network selector
  • Time exception selector
  • Variable selector
  • File selector
  • Process selector
  • Windows service selector
  • Operand and value to compare with
  • Duration, including average checkbox
  • Act as an event (for state-check conditions)
  • Event parameters (for event-based conditions)

Condition classification

All Conditions fall into two groups: conditions that check some state, and conditions that react to some event in the system.

  • State-check Condition example: the value of the Variable TestNumber is 42.
  • Event-based Condition example: the value of the Variable TestNumber has been updated.
  • State-check Condition acting as an event: the value of the Variable TestNumber has been updated and became equal to 42.

Configuring parameters of an event-based Condition

Pause after triggering

The period after a previous trigger when event generation is suppressed. If an event occurs before the suppression period ends, the event is ignored (the behavior is different for state-check conditions — see below).

Force event reset after each condition set calculation (the default)

The state is set to nonsignaled when the entire condition tree is calculated, regardless of whether the event is checked directly or not.

Keep signaled state until event is checked directly

The event remains in the signaled state until it is checked directly during condition calculations.

Configuring parameters of a state-check Condition acting as an event

Act as an event

The next match of the state-check condition is possible only after an unmatched state is detected or the reset timeout expires.

Auto reset timeout

If non-zero, the condition can trigger again after the specified timeout even if the state has matched the whole time. Takes precedence over the Pause after triggering period, so it can shorten the suppression period.

Pause after triggering

The period after a previous trigger when event generation is suppressed. If, while waiting for the suppression period to end, the state changes to non-matching and then back to matching, the condition triggers again immediately after the suppression period ends.

The list of supported Load balancing Conditions

Abbreviations:

  • Flows - Load balancing Flows
  • Broker - Load balancing Broker
  • Health - Server Health
  • N/A - not yet available

Server statistics counters

DescriptionDisplay nameSupported modesAdditional featuresUsed in components
VC Server CPU (%)VCServerCPUStatusstate / eventduration, averageFlows, Broker, Health
OS CPU (%)OSCPUStatusstate / eventduration, averageFlows, Broker, Health
VC Server memory (%)ServerRAMStatusstate / eventduration, averageFlows, Broker, Health
OS memory (%)OSRAMStatusstate / eventduration, averageFlows, Broker, Health
Used VC Server Drive space (%)DiskSpaceStatusstate / eventdurationFlows, Broker, Health
Daily Server uptime (%)ServerUptimeStatusstate / eventFlows, Broker
Maximum [last minute] response time (ms)MaxResponseTimestate / eventdurationFlows, Broker
Total running JobsTotalRunningJobsstate / eventduration, averageFlows, Broker

Job statistics and states

DescriptionDisplay nameSupported modesAdditional featuresUsed in components
Total # running same JobsTotalRunningSameJobsstate / eventduration, averageFlows
Job is runningJobIsRunningstateFlows
Job runtimeJobRunningTimestate / eventduration, averageFlows
Job statusJobStatusstate / eventN/A

Log database

DescriptionDisplay nameSupported modesAdditional featuresUsed in components
LogDB size (kB)LogDBSizestate / eventFlows
LogDB fragmentation (%)LogDBFragmentationstate / eventFlows

Time Exceptions

DescriptionDisplay nameSupported modesAdditional featuresUsed in components
Time Exception collection matchesTimeExceptionMatchesstateFlows
Time Exception occurredTimeExceptionEntereventN/A

Broker connections

DescriptionDisplay nameSupported modesAdditional featuresUsed in components
VC Server is connectedVCServerIsConnectedstateFlows
VC Server connectedVCServerConnectedeventFlows
VC Server disconnectedVCServerDisconnectedeventFlows
VC Server is respondingVCServerIsRespondingstateN/A

Connections API

DescriptionDisplay nameSupported modesAdditional featuresUsed in components
Connection is activeConnectionIsActivestateN/A
Number of Connection instancesConnectionInstancesstateN/A

Networks API

DescriptionDisplay nameSupported modesAdditional featuresUsed in components
Network is connectedNetworkIsConnectedstateFlows
Network connectedNetworkConnectedeventFlows
Network disconnectedNetworkDisconnectedeventFlows

Health API

DescriptionDisplay nameSupported modesAdditional featuresUsed in components
Health statusHealthStatusstate / eventdurationFlows, Broker

Variables

DescriptionDisplay nameSupported modesAdditional featuresUsed in components
Variable valueVariableValuestate / eventduration, average (for numerics)Flows, Variable Trigger
Variable value changedVariableValueChangedeventFlows, Variable Trigger

External processes

DescriptionDisplay nameSupported modesAdditional featuresUsed in components
File statusFileStatusstate / eventdurationN/A
Process statusProcessStatusstate / eventdurationN/A
Process CPU (%)ProcessCPUStatusstate / eventduration, averageN/A
Process terminatedProcessTerminatedeventN/A
Windows Service statusWinServiceStatusstate / eventdurationN/A

Degenerate cases

DescriptionDisplay nameSupported modesAdditional featuresUsed in components
Default (success)AnyFlows, Broker
Default (failure)NoneFlows