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, special properties for a particular type of condition are edited.

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

  • select Server
  • select Job
  • select Connection
  • select Network
  • select Time exception
  • select Variable
  • select file
  • select process
  • select Windows service
  • 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 can be divided 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.
  • Finally, an example of the 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 previous triggering when the event generation is suppressed. If an event occurs in the system before the suppression period has ended, the event will be ignored (see below the difference for state-check conditions).

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

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

Keep signaled state until event is checked directly

The event will remain 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 reset timeout expires.

Auto reset timeout

If nonzero, the condition can trigger again after the specified timeout, even if the state matched all the time. Takes precedence over the “pause after triggering” period, that is, can reduce the suppression period.

Pause after triggering

The period after previous triggering when the event generation is suppressed. However, if while waiting for the end of the suppression period, the state changes to non-matching, and then changes back to matching, then immediately after the end of the suppression period, the condition will be triggered again.

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