login vsi company logo login vsi company logo 250x40


Get the best possible VDI performance, density and availability with Login VSI
Our Solutions

  • Home
  • Blog
  • Login VSI
  • Cleaning up esxtop log files using PowerShell - Login VSI Tips and Tricks

Cleaning up esxtop log files using PowerShell - Login VSI Tips and Tricks

Cleaning up esxtop log files using PowerShell - Login VSI Tips and Tricks

Every now and then when doing large scale tests using Login VSI or collecting live performance data I use VMware's esxtop tool to give me a detailed insight to what’s going on at the host. While esxtop provides great insights, sometimes it’s just a little bit too much information. This got me thinking, how can I quickly sanitize the log file so it only contains information that is actually relevant for me at this moment?

And, of course, the first thing that comes to mind is a few lines of PowerShell. I simply import the csv file collected using esxtop and export it again containing only the columns of information I like. So let’s import the esxtop logfile using the Import-CSV command, select the data I like using select-object and throw it out again using export-csv.

cleaning up esxtop log files using powershell error

Hmmm, what’s happening here? This should have been a fairly straight forward. Analyzing it a bit further, I found out that this is because there is a comma ending every line.

cleaning up esxtop log files using powershell error comma

Luckily PowerShell allows me to fix that before I feed the content to import-csv. While experimenting, I figure at this point it’s probably best to create a simple script that does the following:

  • Point to the esxtop log that I would like to filter
  • Import the “broken” csv file
  • Remove the last character from every line
  • Import the “fixed” CSV file
  • Select the counters of my choice
    • *\Physical Cpu(_Total)\% Util Time
    • *\Physical Disk Adapter(vmhba0)\Commands/sec
    • *\Physical Disk Adapter(vmhba0)\Reads/sec
    • *\Physical Disk Adapter(vmhba0)\Writes/sec
  • Write it to a new file (export.csv)
  • Clean up
Write-Host Select file
$fd = New-Object system.windows.forms.openfiledialog
$fd.MultiSelect = $false
Write-Host Read file
$text = Get-Content -Path $fd.filenames
$text | %{ $lines += $_.SubString(0,$_.Length-1) }
$FixedFilename = $fd.filenames -replace ".csv", ".fixed"
$FilteredFilename = $fd.filenames -replace ".csv", ".filtered"
Write-Host Write fixed logfile
Set-Content -Path $FixedFilename -Value $Lines
Write-Host Read fixed logfile
$csv = import-csv -path $FixedFilename
Write-Host Write filtered logfile
$csv | select-object "*\Physical Cpu(_Total)\% Util Time", "*\Physical Disk Adapter(vmhba0)\Commands/sec", "*\Physical Disk Adapter(vmhba0)\Reads/sec", "*\Physical Disk Adapter(vmhba0)\Writes/sec" | export-csv  export.csv -notypeinformation
Write-Host Delete temp files
remove-item $FixedFilename 

For those of you who have their regional settings setup in a way that Excel does not require the comma fix, that’s great! Otherwise you can now live knowing that your log files will be a lot smaller :-).

Also, make sure to read this blog about PowerShell.

About the author

Mark Plettenberg (@markplettenberg) is a product manager of Login VSI and has played a critical role in the development and growth of Login VSI. Ask Mark about motorcycle mechanics and breaking/repairing anything and everything that has a power plug.

Tags: How-to, Login VSI, VMware, Load Testing, Best Practices, Support, Scripts

Popular Blogs

Login VSI Blog Article - Microsoft Windows 10 Default FTA Associations - Teaser Image

Windows 10 Default File Type Associations and Login VSI

When Login VSI 4.1 was released, the majority of desktops were running Windows 7 and life was easy. We’d set the default filetype for an application and it would simply work. Continue Reading
Login VSI - Press Release - IGEL - Login VSI Partner to Optimize End User Computing Experience Image

[Press Release] IGEL Partners with Login VSI to Optimize the End User Computing Experience

Login PI enables organizations to better protect the performance and availability of their IGEL OS-powered virtual desktop environments Continue Reading
Login VSI - Blog - Login PI Blog Teaser Image - Windows Virtual Desktop: How To Monitor User Experience With Login PI

Windows Virtual Desktop – How to Monitor User Experience?

Microsoft has just announced the public preview of their new Windows Virtual Desktop (WVD) offering at Microsoft Ignite on Tour in Amsterdam today. For those of you who’ve not followed the rumors or the private beta, here’s the outline... Continue Reading
Login VSI Blog - Teaser Image - A Practical Guide to VDI Change Management - Part 1

A Practical Guide to VDI Change Management

Part 1: IT Change Management in general The first in an 8-part series, this practical guide to VDI Change Management will guide you through the transformation of the IT department from a back-end function into a core competency for every modern organization. Continue Reading
Investigating Online Application Performance with Login PI

Investigating Online Application Performance with Login PI

As many companies do, we use a CRM system. Recently, I have been getting complaints about our cloud CRM system, Microsoft Dynamics, being slow. I tried to investigate this by shadowing one of our users to see what was wrong. Continue Reading
Login VSI Blog - How-To Update, Protect Against RIDL, Fallout MDS Vulnerability

How-To: Update, Protect Against RIDL, Fallout MDS Vulnerability

RIDL & Fallout MDS vulnerabilities, impact on VDI performance & actions to take. FAQs we’re receiving & updates on performance tests executed to patch flaws Intel calls “Microarchitectural Data Sampling (M.D.S.)” aka: Rogue In-Flight Data Load (RIDL), Fallout, ZombieLoad & Store-to-Leak Forwarding. Continue Reading
Cookie Settings