Advertisement
stephanlinke

PRTG - Evaluate Json

May 23rd, 2016
159
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. param($url = "")
  2.  
  3. $values = ((Invoke-WebRequest $url) | ConvertFrom-Json)
  4.  
  5. $channel = @"
  6.    <result>
  7.        <channel>{0}</channel>
  8.        <value>{1}</value>
  9.    </result>
  10. "@
  11. #endregion
  12.  
  13. Write-Host "<?xml version='1.0' encoding='UTF-8' ?><prtg>"
  14.  
  15. # We can't evaluate those two channels.
  16. $Values.PSObject.Properties.Remove('date')
  17. $Values.PSObject.Properties.Remove('site')
  18.  
  19. $values | get-member -type NoteProperty | foreach-object {
  20.   $name=$_.Name ;
  21.   $value=$values."$($_.Name)"
  22.  
  23.   Write-Host ([string]::Format($channel,$name,$value))  
  24. }
  25.  
  26. Write-Host "</prtg>";
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement