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 |
|
| DLL |
|