From f98257d12dd242266fd0d8e5c0dd6db6d6981b70 Mon Sep 17 00:00:00 2001 From: catheymp Date: Tue, 26 Jun 2018 20:57:38 -0400 Subject: [PATCH] Add aggregated network stats This is a quick, ugly hack to add aggregated network stats to the script. --- VMPerf-To-Graphite.ps1 | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/VMPerf-To-Graphite.ps1 b/VMPerf-To-Graphite.ps1 index 28b8294..c559122 100644 --- a/VMPerf-To-Graphite.ps1 +++ b/VMPerf-To-Graphite.ps1 @@ -1,4 +1,4 @@ -<# +<# .SYNOPSIS Read Virtual Machine statistics from vCenter and send the results to Graphite. .DESCRIPTION @@ -332,7 +332,9 @@ $metrics = "datastore.numberreadaveraged.average", "datastore.read.average", "datastore.totalreadlatency.average", "datastore.totalwritelatency.average", - "cpu.usage.average" + "cpu.usage.average”, + "net.received.average", + "net.transmitted.average" $iteration = 1 @@ -418,7 +420,13 @@ if ($FromLastPoll -ne "") { WriteLat = weighted_average ($_.Group | where {$_.MetricId -eq "datastore.numberwriteaveraged.average"} | Sort-Object Instance, Timestamp).Value ($_.Group | where {$_.MetricId -eq "datastore.totalwritelatency.average"} | Sort-Object Instance, Timestamp).Value CPU = $_.Group | where {$_.MetricId -eq "cpu.usage.average"} | Measure-Object -Property Value -Average | - select -ExpandProperty Average + select -ExpandProperty Average + NetworkRxKBps = $_.Group | where {$_.MetricId -eq "net.received.average"} | + Measure-Object -Property Value -Sum | + select -ExpandProperty Sum + NetworkTxKBps = $_.Group | where {$_.MetricId -eq "net.transmitted.average"} | + Measure-Object -Property Value -Sum | + select -ExpandProperty Sum } } @@ -466,7 +474,12 @@ if ($FromLastPoll -ne "") { $result = $prefix + $vm + ".WriteLatency " + $stat.WriteLat + " " + (get-date(($stat.Timestamp).touniversaltime()) -uformat "%s") $results.add($results.count, $result) $result = $prefix + $vm + ".CPU " + [int]$stat.CPU + " " + (get-date(($stat.Timestamp).touniversaltime()) -uformat "%s") + $results.add($results.count, $result) + $result = $prefix + $vm + ".NetworkRxKBps " + [int]$stat.NetworkRxKBps + " " + (get-date(($stat.Timestamp).touniversaltime()) -uformat "%s") + $results.add($results.count, $result) + $result = $prefix + $vm + ".NetworkTxKBps " + [int]$stat.NetworkTxKBps + " " + (get-date(($stat.Timestamp).touniversaltime()) -uformat "%s") $results.add($results.count, $result) + } }