This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| faq:measure_availability [2014/09/23 21:22] – hess | faq:measure_availability [2026/10/20 12:34] (current) – removed - external edit (Unknown date) 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ==== How can I measure the availability of my routers? ==== | ||
| - | Of course you can setup a Network Monitoring Tool (NMS) such as [[http:// | ||
| - | An easier and faster way is to run the following PowerShell script and then analyze the results with Excel. | ||
| - | |||
| - | <code powershell> | ||
| - | $hosts += "IP or DynDNS Name of my Routers" | ||
| - | $fname = " | ||
| - | while($true) { | ||
| - | $date = Get-Date -format G | ||
| - | $newtime = Get-Date -format t | ||
| - | # if ( $newtime -gt $time ) { | ||
| - | if ( $true ) { | ||
| - | $time = $newtime | ||
| - | if ($hosts -isnot [system.array]) { | ||
| - | $hosts = Get-Content $hosts | ||
| - | } | ||
| - | $hosts | Foreach-Object { | ||
| - | $pinghost = $_ | ||
| - | $psObject = $null | ||
| - | $psObject = New-Object psobject | ||
| - | Add-Member -InputObject $psobject -MemberType NoteProperty -Name " | ||
| - | Add-Member -InputObject $psobject -MemberType NoteProperty -Name " | ||
| - | $status = Test-Connection –count 1 $pinghost | ||
| - | if ($status.statuscode -eq 0) { | ||
| - | $psobject | Add-Member -MemberType NoteProperty -Name " | ||
| - | $psobject | Add-Member -MemberType NoteProperty -Name " | ||
| - | $psobject | Add-Member -MemberType NoteProperty -Name " | ||
| - | $psObject | Export-Csv $fname -Encoding UTF8 -Delimiter ";" | ||
| - | Write-Host | ||
| - | } else { | ||
| - | $status2 = Test-Connection –count 1 $pinghost -ErrorAction SilentlyContinue | ||
| - | if ($status2.statuscode -eq 0) { | ||
| - | $psobject | Add-Member -MemberType NoteProperty -Name " | ||
| - | $psobject | Add-Member -MemberType NoteProperty -Name " | ||
| - | $psobject | Add-Member -MemberType NoteProperty -Name " | ||
| - | $psObject | Export-Csv $fname -Encoding UTF8 -Delimiter ";" | ||
| - | Write-Host $psobject | ||
| - | } else { | ||
| - | $psobject | Add-Member -MemberType NoteProperty -Name " | ||
| - | $psobject | Add-Member -MemberType NoteProperty -Name " | ||
| - | $psobject | Add-Member -MemberType NoteProperty -Name " | ||
| - | $psObject | Export-Csv $fname -Encoding UTF8 -Delimiter ";" | ||
| - | Write-Host $psobject -BackgroundColor Red | ||
| - | } | ||
| - | } | ||
| - | } | ||
| - | } | ||
| - | Write-Host "wait another 5 seconds for for next check ..." | ||
| - | Start-Sleep 5 | ||
| - | } | ||
| - | </ | ||