Citrix Virtual Apps and Desktops SDK

Get-BrokerHypervisorAlert

Gets hypervisor alerts recorded by the controller.

Syntax

Get-BrokerHypervisorAlert
   [-HostingServerName <String>]
   [-HypervisorConnectionUid <Int32>]
   [-Metadata <String>]
   [-Metric <AlertMetric>]
   [-Severity <AlertSeverity>]
   [-Time <DateTime>]
   [-TriggerInterval <TimeSpan>]
   [-TriggerLevel <Double>]
   [-TriggerPeriod <TimeSpan>]
   [-TriggerValue <Double>]
   [-Property <String[]>]
   [-ReturnTotalRecordCount]
   [-MaxRecordCount <Int32>]
   [-Skip <Int32>]
   [-SortBy <String>]
   [-Filter <String>]
   [-FilterScope <Guid>]
   [<CitrixCommonParameters>]
   [<CommonParameters>]
<!--NeedCopy-->
Get-BrokerHypervisorAlert
   -Uid <Int64>
   [-Property <String[]>]
   [<CitrixCommonParameters>]
   [<CommonParameters>]
<!--NeedCopy-->

Description

The Get-BrokerHypervisorAlert cmdlet gets alert objects reported by the hypervisors that the controller is monitoring.

Without parameters, Get-BrokerHypervisorAlert gets all of the alerts recorded. Use parameters to select which alerts are returned.

Once you have configured suitable alerts in your hypervisor, and configured the controller with your hypervisor details (see New-BrokerHypervisorConnection), the controller monitors each hypervisor for new alerts.

Four hypervisor alert metrics are recorded; these relate to the hypervisor host, not individual virtual machines:

  • Cpu: Reports excessive CPU usage.
  • Memory: Reports excessive memory usage.
  • Network: Reports high network activity.
  • Disk: Reports high disk activity.

Each alert also includes information about where and when the alert occurred, the severity of the alert (Red/Yellow), and the configuration of the triggered alert.

The following metrics are supported with these hypervisors:

  • VMware ESX (Cpu, Memory, Network, Disk)
  • Citrix XenServer (Cpu, Network)
  • Microsoft Hyper-V (None)

————————– BrokerHypervisorAlert Object

The BrokerHypervisorAlert represents a hypervisor alert object. It contains the following properties:

  • HostingServerName (System.String)

    The name of the hypervisor hosting this machine.

  • HypervisorConnectionUid (System.Int32)

    The Uid of the hypervisor connection that reported this alert.

  • MetadataMap (System.Collections.Generic.Dictionary<string, string>)

    Metadata for this hypervisor alert.

  • Metric (Citrix.Broker.Admin.SDK.AlertMetric)

    The metric this alert relates to: Cpu, Memory, Network, Disk, HostConnection or HostReboot.

  • Severity (Citrix.Broker.Admin.SDK.AlertSeverity)

    Severity of the alert (Red or Yellow). Red is more serious than Yellow.

  • Time (System.DateTime)

    Time that the alert occurred.

  • TriggerInterval (System.TimeSpan?)

    Number of ticks (100ns) before the alert can be raised again.

  • TriggerLevel (System.Double?)

    Threshold level that the alert was configured to trigger at.

  • TriggerPeriod (System.TimeSpan?)

    Duration the value was above the trigger level.

  • TriggerValue (System.Double?)

    The value of the monitored metric that triggered the alert.

  • Uid (System.Int64)

    The unique internal identifier of this alert.

Examples

EXAMPLE 1

Returns all serious (Red) alerts for any hosting server with a name that starts with ‘TestHyp’.

Get-BrokerHypervisorAlert -HostingServerName TestHyp* -Severity Red
<!--NeedCopy-->

EXAMPLE 2

Returns all CPU usage alerts that occurred in the last hour.

Get-BrokerHypervisorAlert -Filter { Metric -eq 'Cpu' -and Time -ge '-1:0' }
<!--NeedCopy-->

Parameters

-Uid

Gets the hypervisor alert with the specified UID.

Type: Int64
Position: Named
Default value: None
Required: True
Accept pipeline input: False
Accept wildcard characters: False

-HostingServerName

Gets alerts for the specified hosting hypervisor server.

Type: String
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: True

-HypervisorConnectionUid

Gets alerts for the specified hypervisor connection.

Type: Int32
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-Metadata

Gets records with matching metadata entries.

The value being compared with is a concatenation of the key name, a colon, and the value. For example: -Metadata “abc:x*” matches records with a metadata entry having a key name of “abc” and a value starting with the letter “x”.

Type: String
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-Metric

Gets alerts for a specified metric.

Valid values are: Cpu, Memory, Network and Disk.

Type: AlertMetric
Accepted values: Cpu, Memory, Network, Disk, HostConnection, HostReboot, HypervisorConnectionUnavailable
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-Severity

Gets alerts with the specified severity.

Valid values are: Red and Yellow.

Type: AlertSeverity
Accepted values: Red, Yellow
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-Time

Gets alerts that occurred at a specific time.

You can also use -Filter and relative comparisons; see the examples for more information.

Type: DateTime
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-TriggerInterval

Gets alerts with a specific trigger interval. This is the interval before the alert is raised again.

Type: TimeSpan
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-TriggerLevel

Gets alerts with a specific trigger threshold level.

Type: Double
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-TriggerPeriod

Gets alerts with a specific trigger period. This is the duration the threshold level was exceeded for, prior to the alert triggering.

Type: TimeSpan
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-TriggerValue

Gets the value of the monitored metric that triggered the alert.

Type: Double
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-ReturnTotalRecordCount

When specified, this causes the cmdlet to output an error record containing the number of records available. This error record is additional information and does not affect the objects written to the output pipeline. See about_Broker_Filtering for details.

Type: SwitchParameter
Position: Named
Default value: False
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-MaxRecordCount

Specifies the maximum number of records to return.

Type: Int32
Position: Named
Default value: 250
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-Skip

Skips the specified number of records before returning results. Also reduces the count returned by -ReturnTotalRecordCount.

Type: Int32
Position: Named
Default value: 0
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-SortBy

Sorts the results by the specified list of properties. The list is a set of property names separated by commas, semi-colons, or spaces. Optionally, prefix each name with a + or - to indicate ascending or descending order. Ascending order is assumed if no prefix is present.

Type: String
Position: Named
Default value: The default sort order is by name or unique identifier.
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-Filter

Gets records that match a PowerShell style filter expression. See about_Broker_Filtering for details.

Type: String
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-FilterScope

Gets only results allowed by the specified scope id.

Type: Guid
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False
Introduced in: Citrix Virtual Apps and Desktop 7 2106

-Property

Specifies the properties to be returned. This is similar to piping the output of the command through Select-Object, but the properties are filtered more efficiently at the server.

Type: String[]
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

CitrixCommonParameters

This cmdlet supports the common Citrix parameters: -AdminAddress, -AdminClientIP, -BearerToken, -TraceParent, -TraceState and -VirtualSiteId. For more information, see about_CitrixCommonParameters.

CommonParameters

This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.

Inputs

None

You cannot pipe objects to this cmdlet.

Outputs

Citrix.Broker.Admin.SDK.HypervisorAlert

Get-BrokerHypervisorAlert returns an object for each matching alert.

Get-BrokerHypervisorAlert