Msvm _ HeartbeatComponent-Klasse

Stellt den Zustand des Heartbeatdiensts dar, der für die Überwachung des Zustands eines virtuellen Computers verantwortlich ist, indem in regelmäßigen Abständen ein Heartbeat gemeldet wird.

Die folgende Syntax ist Managed Object Format (MOF)-Code vereinfacht und enthält alle geerbten Eigenschaften.

Syntax

[Dynamic, Provider("VmmsWmiInstanceAndMethodProvider"), AMENDMENT]
class Msvm_HeartbeatComponent : CIM_LogicalDevice
{
  string   InstanceID;
  string   Caption = "Heartbeat";
  string   Description = "Microsoft Heartbeat Service";
  string   ElementName = "Heartbeat";
  datetime InstallDate;
  string   Name;
  uint16   OperationalStatus[];
  string   StatusDescriptions[];
  string   Status;
  uint16   HealthState = 5;
  uint16   CommunicationStatus;
  uint16   DetailedStatus;
  uint16   OperatingStatus;
  uint16   PrimaryStatus;
  uint16   EnabledState = 2;
  string   OtherEnabledState;
  uint16   RequestedState = 12;
  uint16   EnabledDefault = 7;
  datetime TimeOfLastStateChange;
  uint16   AvailableRequestedStates[];
  uint16   TransitioningToState;
  string   SystemCreationClassName = "Msvm_ComputerSystem";
  string   SystemName;
  string   CreationClassName = "Msvm_HeartbeatComponent";
  string   DeviceID = "Microsoft:VMGUID\GUID";
  boolean  PowerManagementSupported;
  uint16   PowerManagementCapabilities[];
  uint16   Availability;
  uint16   StatusInfo;
  uint32   LastErrorCode;
  string   ErrorDescription;
  boolean  ErrorCleared;
  string   OtherIdentifyingInfo[];
  uint64   PowerOnHours;
  uint64   TotalPowerOnHours;
  string   IdentifyingDescriptions[];
  uint16   AdditionalAvailability[] = 6;
  uint64   MaxQuiesceTime;
};

Member

Die Msvm _ HeartbeatComponent-Klasse verfügt über diese Typen von Membern:

Methoden

Die Msvm _ HeartbeatComponent-Klasse verfügt über diese Methoden.

Methode Beschreibung
EnableDevice Diese Methode wird nicht unterstützt.
OnlineGeräte Diese Methode wird nicht unterstützt.
QuiesceDevice Diese Methode wird nicht unterstützt.
RequestStateChange Fordert eine Zustandsänderung an.
Zurücksetzen Setzt das virtuelle Gerät zurück.
RestoreProperties Diese Methode wird nicht unterstützt.
SaveProperties Diese Methode wird nicht unterstützt.
SetPowerState Diese Methode wird nicht unterstützt.

Eigenschaften

Die Msvm _ HeartbeatComponent-Klasse verfügt über diese Eigenschaften.

AdditionalAvailability

Datentyp: uint16-Array

Zugriffstyp: Schreibgeschützt

Alle zusätzlichen Verfügbarkeiten und Status des Geräts. Diese Eigenschaft wird von CIM _ LogicalDevicegeerbt und immer auf 6 (Nicht zutreffend) festgelegt.

Verfügbarkeit

Datentyp: uint16

Zugriffstyp: Schreibgeschützt

Die primäre Verfügbarkeit und der Status des Geräts. Diese Eigenschaft wird von CIM _ LogicalDevicegeerbt, aber nicht verwendet.

AvailableRequestedStates

Datentyp: uint16-Array

Zugriffstyp: Schreibgeschützt

Gibt die möglichen Werte für den RequestedState-Parameter der RequestStateChange-Methode an, die zum Initiieren einer Zustandsänderung verwendet wird. Die aufgelisteten Werte sind eine Teilmenge der Werte, die in der RequestedStatesSupported-Eigenschaft der zugeordneten Instanz von CIM _ EnabledLogicalElementCapabilities enthalten sind, wobei die ausgewählten Werte eine Funktion des aktuellen Zustands des CIM _ EnabledLogicalElementsind. Diese Eigenschaft kann ungleich NULL sein, wenn eine Implementierung den Satz möglicher Werte als Funktion des aktuellen Zustands ankündigen kann. Diese Eigenschaft ist NULL, wenn eine Implementierung den Satz möglicher Werte nicht als Funktion des aktuellen Zustands bestimmen kann.

Diese Eigenschaft wird von CIM _ EnabledLogicalElementgeerbt.

Aktiviert (2)

Deaktiviert (3)

Herunterfahren (4)

Offline (6)

Test (7)

Zurückstellen (8)

Stille (9)

Neustart (10)

Zurücksetzen (11)

DMTF Reserved (.. )

Caption

Datentyp: string

Zugriffstyp: Schreibgeschützt

Eine kurze Beschreibung des -Objekts. Diese Eigenschaft wird von der CIM _ ManagedElement-Klasse geerbt und immer auf "Heartbeat" festgelegt.

CommunicationStatus

Datentyp: uint16

Zugriffstyp: Schreibgeschützt

Gibt die Fähigkeit der Instrumentierung an, mit dem zugrunde liegenden verwalteten Element zu kommunizieren. Ein NULL-Wert gibt an, dass diese Eigenschaft nicht implementiert ist. Diese Eigenschaft wird von CIM _ ManagedSystemElementgeerbt.

CreationClassName

Datentyp: string

Zugriffstyp: Schreibgeschützt

Der Name der Erstellungsklasse des Bereichssystems. Diese Eigenschaft wird von CIM _ LogicalDevicegeerbt und immer auf "Msvm _ HeartbeatComponent" festgelegt.

Beschreibung

Datentyp: string

Zugriffstyp: Schreibgeschützt

Eine Beschreibung des -Objekts. Diese Eigenschaft wird von CIM _ ManagedElementgeerbt und immer auf "Microsoft Heartbeat Service" festgelegt.

DetailedStatus

Datentyp: uint16

Zugriffstyp: Schreibgeschützt

Ergänzt die PrimaryStatus-Eigenschaft durch zusätzliche Statusdetails. Ein NULL-Wert gibt an, dass diese Eigenschaft nicht implementiert ist. Diese Eigenschaft wird von CIM _ ManagedSystemElementgeerbt.

Deviceid

Datentyp: string

Zugriffstyp: Schreibgeschützt

Eine Adresse oder andere identifizierende Informationen zum eindeutigen Benennen des logischen Geräts. Diese Eigenschaft wird von CIM _ LogicalDevicegeerbt und immer auf "Microsoft:VMGUID \ GUID" festgelegt, wobei VMGUID die Name-Eigenschaft des Msvm-Computersystems _ ist, das diesem Gerät zugeordnet ist.

ElementName

Datentyp: string

Zugriffstyp: Schreibgeschützt

Ein Anzeigename für das Objekt. Diese Eigenschaft wird von CIM _ ManagedElementgeerbt und immer auf "Heartbeat" festgelegt.

EnabledDefault

Datentyp: uint16

Zugriffstyp: Schreibgeschützt

Diese Eigenschaft wird von CIM _ EnabledLogicalElement geerbtund immer auf 7 (Kein Standardwert) festgelegt.

EnabledState

Datentyp: uint16

Zugriffstyp: Schreibgeschützt

Der aktivierte und deaktivierte Zustände eines Elements. Diese Eigenschaft wird von CIM _ EnabledLogicalElement geerbt und ist einer der folgenden Werte.

Wert Bedeutung
Aktiviert
2
Das -Element wird ausgeführt.
Deaktiviert
3
Das -Element ist deaktiviert.

ErrorCleared

Datentyp: boolescher Wert

Zugriffstyp: Schreibgeschützt

Gibt an, ob der in LastErrorCode gemeldete Fehler jetzt nicht mehr angezeigt wird. Diese Eigenschaft wird von CIM _ LogicalDevice geerbt, aber nicht verwendet.

ErrorDescription

Datentyp: Zeichenfolge

Zugriffstyp: Schreibgeschützt

Eine Zeichenfolge, die weitere Informationen zum in LastErrorCode aufgezeichneten Fehler sowie Informationen zu allen Korrekturmaßnahmen enthält, die durchgeführt werden können. Diese Eigenschaft wird von CIM _ LogicalDevice geerbt, aber nicht verwendet.

HealthState

Datentyp: uint16

Zugriffstyp: Schreibgeschützt

Die aktuelle Integrität des Elements. Diese Eigenschaft wird von CIM _ ManagedSystemElement geerbtund immer auf 5 (OK) festgelegt.

IdentifyingDescriptions

Datentyp: Zeichenfolgenarray

Zugriffstyp: Schreibgeschützt

Ein Array von Freiformzeichenfolgen, die Erklärungen und Details hinter den Einträgen im OtherIdentifyingInfo-Eigenschaftenarray bereitstellen. Diese Eigenschaft wird von CIM _ LogicalDevice geerbt,aber nicht verwendet.

InstallDate

Datentyp: datetime

Zugriffstyp: Schreibgeschützt

Datum und Uhrzeit der Installation des Integrationsdiensts auf dem virtuellen Computer. Diese Eigenschaft wird von CIM _ ManagedSystemElement geerbt.

InstanceID

Datentyp: Zeichenfolge

Zugriffstyp: Schreibgeschützt

Qualifizierer: Schlüssel

Identifiziert eine Instanz dieser Klasse eindeutig. Diese Eigenschaft wird von CIM _ ManagedElement geerbt.

LastErrorCode

Datentyp: uint32

Zugriffstyp: Schreibgeschützt

Der letzte vom logischen Gerät gemeldete Fehlercode. Diese Eigenschaft wird von CIM _ LogicalDevice geerbt,aber nicht verwendet.

MaxQuiesceTime

Datentyp: uint64

Zugriffstyp: Schreibgeschützt

Diese Eigenschaft ist veraltet. Diese Eigenschaft wird von CIM _ LogicalDevice geerbt,aber nicht verwendet.

Name

Datentyp: Zeichenfolge

Zugriffstyp: Schreibgeschützt

Die Bezeichnung, unter der das -Objekt bekannt ist. Diese Eigenschaft wird von CIM _ ManagedSystemElement geerbt.

OperatingStatus

Datentyp: uint16

Zugriffstyp: Schreibgeschützt

Stellt aktuelle Statusinformationen für die Betriebsbedingung des Elements zur Verfügung und kann verwendet werden, um weitere Details in Bezug auf den Wert der EnabledState-Eigenschaft zu erhalten. Ein NULL-Wert gibt an, dass diese Eigenschaft nicht implementiert ist. Diese Eigenschaft wird von CIM _ ManagedSystemElement geerbt.

OperationalStatus

Datentyp: uint16 array

Zugriffstyp: Schreibgeschützt

Qualifizierer: Override ("OperationalStatus"), ArrayType ("Indexed")

Der aktuelle Status des Elements. Diese Eigenschaft wird von CIM _ ManagedSystemElement geerbt.

Im Folgenden finden Sie die möglichen Werte für den OperationalStatus [ ] 0-Eigenschaftswert.

OK (2)

Der Dienst wird normal ausgeführt. Die Eigenschaftswerte OperationalStatus [ 1 und ] StatusDescriptions [ 1 können weitere Informationen ] enthalten.

Heruntergestuft (3)

Der Dienst wird normal ausgeführt, aber der Gastdienst hat eine kompatible Version des Kommunikationsprotokolls ausgehandelt. Die Eigenschaftswerte OperationalStatus [ 1 und ] StatusDescriptions [ 1 können weitere Informationen ] enthalten.

Nicht behebtbarer Fehler (7)

Der Gast unterstützt keine kompatible Protokollversion. Die Eigenschaftswerte OperationalStatus [ 1 und ] StatusDescriptions [ 1 können weitere Informationen ] enthalten.

Kein Kontakt (12)

Der Gastdienst ist nicht installiert oder wurde noch nicht kontaktiert.

Verlorene Kommunikation (13)

Der Gastdienst reagiert nicht mehr normal.

Angehalten (15)

Der virtuelle Computer wird angehalten.

Der OperationalStatus [ 1-Eigenschaftswert gibt die ] zusammenfingierten Anwendungszustandswerte an. Dies ist einer der folgenden Werte.

Hinweis

Der Zustand einer Anwendung wird auf dem virtuellen Computer mithilfe der SetApplicationState-Methode festgelegt.

OK (2)

Die anwendungen, die auf dem virtuellen Computer ausgeführt werden, funktionieren normal.

Protokollkonflikt (32775)

Auf dem Gast und den Hostkomponenten werden unterschiedliche Protokollversionen ausgeführt.

Anwendungskritischer Zustand (32782)

Mindestens eine Der Anwendungen auf dem virtuellen Computer befindet sich in einem kritischen Zustand.

Kommunikations-Timed out (32783)

Timed out waiting for a response from the guest component. (Time out beim Warten auf eine Antwort von der Gastkomponente.)

Kommunikations fehlgeschlagen (32784)

Fehler bei der Kommunikation mit der Gastkomponente.

OtherEnabledState

Datentyp: string

Zugriffstyp: Schreibgeschützt

Eine Zeichenfolge, die den aktivierten oder deaktivierten Zustand des Elements beschreibt, wenn die EnabledState-Eigenschaft auf 1 (Sonstige) festgelegt ist. Diese Eigenschaft muss auf NULL festgelegt werden, wenn die EnabledState-Eigenschaft einen anderen Wert als 1 aufgibt. Diese Eigenschaft wird von CIM _ EnabledLogicalElement geerbtund immer auf NULL festgelegt.

OtherIdentifyingInfo

Datentyp: Zeichenfolgenarray

Zugriffstyp: Schreibgeschützt

Alle zusätzlichen Daten, die über die Geräte-ID-Informationen hinausgehen und zum Identifizieren eines logischen Geräts verwendet werden können. Diese Eigenschaft wird von CIM _ LogicalDevice geerbt und immer auf NULL festgelegt.

PowerManagementCapabilities

Datentyp: uint16 array

Zugriffstyp: Schreibgeschützt

Die Energieverwaltungsfunktionen des Geräts. Diese Eigenschaft wird von CIM _ LogicalDevice geerbt,aber nicht verwendet.

PowerManagementSupported

Datentyp: boolescher Wert

Zugriffstyp: Schreibgeschützt

Gibt an, ob das Gerät mit Strom verwaltet werden kann. Diese Eigenschaft wird von CIM _ LogicalDevice geerbt,aber nicht verwendet.

PowerOnHours

Datentyp: uint64

Zugriffstyp: Schreibgeschützt

Die Anzahl der aufeinanderfolgenden Stunden, die dieses Gerät seit seinem letzten Energiezyklus eingeschaltet wurde. Diese Eigenschaft wird von CIM _ LogicalDevice geerbt, aber nicht verwendet.

PrimaryStatus

Datentyp: uint16

Zugriffstyp: Schreibgeschützt

Stellt Statusinformationen auf hoher Ebene zur Verfügung. Diese Eigenschaft sollte in Verbindung mit der DetailedStatus-Eigenschaft verwendet werden, um detaillierte Informationen zum Integritätsstatus für das Element und seine Unterkomponenten zu erhalten. Ein NULL-Wert gibt an, dass diese Eigenschaft nicht implementiert ist. Diese Eigenschaft wird von CIM _ ManagedSystemElement geerbt.

RequestedState

Datentyp: uint16

Zugriffstyp: Schreibgeschützt

Der zuletzt angeforderte oder gewünschte Zustand für das Element. Diese Eigenschaft wird von CIM _ EnabledLogicalElement geerbtund immer auf 12 (Nicht zutreffend) festgelegt.

Status

Datentyp: string

Zugriffstyp: Schreibgeschützt

Der aktuelle Status des -Objekts. Diese Eigenschaft wird von CIM _ ManagedSystemElement geerbt, aber nicht verwendet.

StatusDescriptions

Datentyp: Zeichenfolgenarray

Zugriffstyp: Schreibgeschützt

Zeichenfolgen, die die verschiedenen OperationalStatus-Arraywerte beschreiben. Diese Eigenschaft wird von CIM _ ManagedSystemElement geerbt.

StatusInfo

Datentyp: uint16

Zugriffstyp: Schreibgeschützt

Der aktuelle Zustand des logischen Geräts. Diese Eigenschaft wird von CIM _ LogicalDevice geerbt,aber nicht verwendet.

SystemCreationClassName

Datentyp: string

Zugriffstyp: Schreibgeschützt

Der Name der Erstellungsklasse des Bereichssystems. Diese Eigenschaft wird von CIM _ LogicalDevice geerbtund immer auf "Msvm _ ComputerSystem" festgelegt.

Systemname

Datentyp: string

Zugriffstyp: Schreibgeschützt

Der Name des Bereichssystems. Diese Eigenschaft wird von CIM _ LogicalDevice geerbt und ist der Name des Msvm-Computersystems, _ das diesem Heartbeatdienst zugeordnet ist.

TimeOfLastStateChange

Datentyp: datetime

Zugriffstyp: Schreibgeschützt

Das Datum oder die Uhrzeit der letzten Änderung des aktivierten Zustands des Elements. Diese Eigenschaft wird von CIM _ EnabledLogicalElement geerbtund immer auf NULL festgelegt.

TotalPowerOnHours

Datentyp: uint64

Zugriffstyp: Schreibgeschützt

Die Gesamtanzahl der Stunden, in denen dieses Gerät eingeschaltet wurde. Diese Eigenschaft wird von CIM _ LogicalDevice geerbt,aber nicht verwendet.

TransitioningToState

Datentyp: uint16

Zugriffstyp: Schreibgeschützt

Gibt den Zielzustand an, in den die Instanz übergibt. Diese Eigenschaft wird von CIM _ EnabledLogicalElement geerbt,aber nicht verwendet.

Hinweise

Der Zugriff auf die Msvm _ HeartbeatComponent-Klasse kann durch UAC-Filterung eingeschränkt werden. Weitere Informationen finden Sie unter Benutzerkontensteuerung und WMI.

Beispiele

Im folgenden C#-Beispiel wird der Integritätsstatus der Anwendung eines virtuellen Computers erhalten. Die referenzierten Hilfsprogramme finden Sie unter Allgemeine Hilfsprogramme für die Virtualisierungsbeispiele (V2).

Wichtig

Damit der folgende Code ordnungsgemäß funktioniert, muss er mit Administratorrechten ausgeführt werden.

private UInt16 OperationalStatusOk = 2;
private UInt16 OperationalStatusApplicationCriticalState = 32782;

/// <summary>
/// Gets the applications status in the VM.
/// </summary>
/// <param name="hostMachine">The hostname of the machine on which
/// the VM is running.</param>
/// <param name="vmName">The VM name.</param>
public
void
GetAppHealthStatus(
    string hostMachine,
    string vmName
    )
{
    ManagementScope scope = new ManagementScope(
        @"\\" + hostMachine + @"\root\virtualization\v2", null);

    ManagementObject heartBeatComponent = null;

    // Get the VM object and its heart beat component.
    using (ManagementObject vm = WmiUtilities.GetVirtualMachine(vmName, scope))
    using (ManagementObjectCollection heartBeatCollection =
        vm.GetRelated("Msvm_HeartbeatComponent", "Msvm_SystemDevice",
            null, null, null, null, false, null))
    {
        foreach (ManagementObject element in heartBeatCollection)
        {
            heartBeatComponent = element;
            break;
        }
    }

    if (heartBeatComponent == null)
    {
        Console.WriteLine("The VM is not running.");
        return;
    }

    using (heartBeatComponent)
    {
        UInt16[] operationalStatus = (UInt16[])heartBeatComponent["OperationalStatus"];
        UInt16 vmStatus = operationalStatus[0];

        if (vmStatus != OperationalStatusOk)
        {
            Console.WriteLine("The VM heartbeat status is not OK");
            return;
        }

        if (operationalStatus.Length != 2)
        {
            Console.WriteLine("The required Integration Components are not running " +
                "or not installed.");
            return;
        }

        UInt16 appStatus = operationalStatus[1];
        if (appStatus == OperationalStatusOk)
        {
            Console.WriteLine("The VM applications health status: OK");
        }
        else if (appStatus == OperationalStatusApplicationCriticalState)
        {
            Console.WriteLine("The VM applications health status: Critical");
        }
        else
        {
            throw new ManagementException("Unknown application health status");
        }
    }
}

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
[Windows 8 Nur Desktop-Apps]
Unterstützte Mindestversion (Server)
[Windows Server 2012 Nur Desktop-Apps]
Namespace
Root \ Virtualization \ V2
MOF
WindowsVirtualization.V2.mof
DLL
Vmms.exe

Siehe auch

CIM _ LogicalDevice

CIM _ LogicalDevice

Msvm _ HeartbeatComponent