Skip navigation

ESXi で問題が起きた時に、システムログ(ログバンドルや、vm-support と呼ばれるファイル)

を取得することが多いと思います。

 

vSphere Client であれば、

「ファイル」 → 「エクスポート」 → 「システムログのエクスポート」

のあたりで取得できるログファイルです。

get_log0.png

 

今回は、これを PowerCLI の、Get-Log コマンドレットで取得してみました。

 

ちなみに、バージョンはPowerCLI 5.1 Release 2 です。

PowerCLI> Get-PowerCLIVersion | select UserFriendlyVersion

UserFriendlyVersion
-------------------
VMware vSphere PowerCLI 5.1 Release 2 build 1012425

 

ESXi のシステムログ取得(PowerCLI編)

 

あらかじめ、Connect-VIServer で vCener か ESXi に接続したうえで、

下記のようなコマンドラインを実行します。

 

Get-VMHost <取得対象のESXi> | Get-Log -Bundle -DestinationPath <ファイルの出力先フォルダ>

 

コマンドラインを実行すると、下記のようにゲージが進み、

get_log1.png

 

tgz(tar + gzip)で圧縮されたログファイルがダウンロードされます。

get_log2.png

 

vCenter や ESXi にSSH ログインして取得する場合とは異なり、UUID が含まれるファイル名になります。

ちなみに、同じ ESXi から Get-Log するたびに、ファイル名の UUID 部分は変わります。

※ほかの方法で取得する場合は、ファイル名に ESXi のホスト名や vCenter のインベントリ登録名が含まれます。

 

PowerCLI 慣れしている人には、vSphere Client などを使用するよりも便利だと思いますが、

ちょっとファイル名がイケていない気がします。

 

→ ファイル名に ESXi のホスト名&タイムスタンプがつく PowerCLI スクリプト作ってみました。

 

以上、PowerCLI で ログバンドルを取得してみた話でした。