免責事項:これは英文の記事「PowerCLI Get-VIEvent output columns fluctuate based on vCenter event types」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。
PowerCLI の Get-VIEvent コマンドレットを実行すると、取得されるイベントオブジェクトが保持するプロパティ(カラム)の数および種類は、イベントタイプによって変動します。
Get-VIEvent の出力例は以下のとおりです。
例 1: 仮想マシンの CPU 使用率アラームのステータス変更イベント
Source : VMware.Vim.ManagedEntityEventArgument
Entity : VMware.Vim.ManagedEntityEventArgument
From : gray
To : green
Alarm : VMware.Vim.AlarmEventArgument
Key : 1961127
ChainId : 1961127
CreatedTime : <EVENT_CREATED_TIMESTAMP>
UserName :
Datacenter : VMware.Vim.DatacenterEventArgument
ComputeResource : VMware.Vim.ComputeResourceEventArgument
Host : VMware.Vim.HostEventArgument
Vm : VMware.Vim.VmEventArgument
Ds :
Net :
Dvs :
FullFormattedMessage : Alarm 'Virtual machine CPU usage' on ####### changed from Gray to Green
ChangeTag :
例 2: 仮想マシンのゲスト OS シャットダウンタスク
Info : VMware.Vim.TaskInfo
Key : 1961154
ChainId : 1961154
CreatedTime : <EVENT_CREATED_TIMESTAMP>
UserName : VSPHERE.LOCAL\Administrator
Datacenter : VMware.Vim.DatacenterEventArgument
ComputeResource : VMware.Vim.ComputeResourceEventArgument
Host : VMware.Vim.HostEventArgument
Vm : VMware.Vim.VmEventArgument
Ds :
Net :
Dvs :
FullFormattedMessage : Task: Initiate guest OS shutdown
ChangeTag :
VMware vCenter Server
VMware PowerCLI
これは Get-VIEvent で取得される vim.event.Event データオブジェクトのアーキテクチャに基づく動作です。
全イベント共通のプロパティに加え、発生したイベントの種類ごとに固有のプロパティが動的に追加されます。
すべてのイベントは、vim.event.Event データオブジェクトに含まれる以下の 13 個のプロパティを共通して保持します。
- ChainId
- ChangeTag
- ComputeResource
- CreatedTime
- Datacenter
- Ds
- Dvs
- FullFormattedMessage
- Host
- Key
- Net
- UserName
- Vm
Get-VIEvent の出力では、これらのプロパティに加え、イベントの種類に応じた特定のカラムが追加されます。
Issue/Introduction セクションに記載した例では、以下のプロパティが追加されています。
例 1: Source, Entity, From, To, Alarm
例 2: Info
運用要件で固定のカラム構造が必要な場合は、Select-Object コマンドレットを使用して必要なプロパティのみ抽出してください。
例 :
Get-VIEvent | Select-Object CreatedTime, FullFormattedMessage, Key, UserName
関連情報:
Developer Portal - Get-VIEvent Command | VMware PowerCLI Reference
Developer Portal - Data Object - Event(vim.event.Event)
Exporting vCenter events using PowerCLI(328221)