VMware vSphere PowerCLIのGet-VIEventコマンドレットでvCenter Serverのイベントログを取得する
しかし簡単には直接vCenter Serverを利用する事が出来ず、お客様にイベントログを抽出してもらって、メールで送ってもらったりと、なかなか手間がかかったりします。
なので、毎日夜間に直近の24時間分のイベントログを抽出して、日別のログとして保存しておき、必要な時にすぐに送ってもらえるようにしています。(毎日自動でメールに添付して送信しているシステムもあります)
VMware vSphere PowerCLI 5.1 Release 1 |
PowerCLI C:\> $FinishDay = Get-Date PowerCLI C:\> $StartDay = (Get-Date).AddHours(-24) PowerCLI C:\> Get-VIEvent -Start $StartDay -Finish $FinishDay |export-csv -encoding default <ファイル名> PowerCLI C:\> _ |
今から過去24時間分のイベントログを抽出するコマンド
$FinishDay = Get-Date
$StartDay = (Get-Date).AddHours(-24)
Get-VIEvent -Start $StartDay -Finish $FinishDay |export-csv encoding default <ファイル名>
Windows PowerShell |
PS C:\> $FinishDay = Get-Date PS C:\> $StartDay = (Get-Date).AddHours(-24) PS C:\> $FinishDay 2016年11月12日 8:55:34 PS C:\> $StartDay 2016年11月11日 8:55:34 PS C:\> _ |
変数$FinishDayと変数$StartDayの値を確認する
$FinishDayはGet-Dateで、現在の日時そのものです。PS C:\> $FinishDay = Get-Date
PS C:\> $StartDay = (Get-Date).AddHours(-24)
PS C:\> $FinishDay
2016年11月12日 8:55:34
PS C:\> $StartDay
2016年11月11日 8:55:34
PS C:\>
$StartDay = (Get-Date).AddHours(-24)は、現在の日時から24時間前を求めてそれを変数$StartDayに入れています。
$StartDay = (Get-Date).AddDays(-1)でも、今回は同じ意味です、
これを毎日23時59分から0時ちょうどの間にジョブとして実行すれば、その日1日のイベントログをCSVファイルに保存する事が出来ます。
2016/12/29 修正
export-csvのオプションは「encoding」ではなく「-encoding」でした。
それを修正しました。
- 関連記事
-
- Windows PowerShellのSet-ItemPropertyコマンドレットでファイルやフォルダのタイムスタンプを変更する (2016/12/12)
- Windows PowerShellのNew-Itemコマンドレットで新しいファイルやフォルダを作成する (2016/12/11)
- VMware vSphere PowerCLIのGet-Datastoreコマンドレットで空き容量が少ないデータストアの一覧を取得する (2016/11/21)
- VMware vSphere PowerCLIのGet-VIEventコマンドレットでvCenter Serverのイベントログを取得する (2016/11/12)
- VMware vSphere PowerCLIのGet-Datastoreコマンドレットでデータストアの空き容量などの一覧を取得する (2016/11/05)
- VMware vSphere PowerCLIのGet-Snapshotコマンドレットでスナップショットが作成されている仮想マシンの一覧を取得する (2016/11/03)
- マイクロソフトのNetwork & AD サポートチームブログに「パスワードに関するガイダンス」が掲載されました (2016/05/28)