Centralize log collection with a custom REST API
Function set logs
Function Send-Logs(){
param (
[String]$LogType,
$LogBodyList
)
$url="<functionurl>"
$LogBodyJSON = @"
{
"logtype": "$LogType",
"logbody": {}
}
"@
$LogBodyObject = ConvertFrom-JSON $LogBodyJSON
Foreach($Log in $LogBodyList.GetEnumerator()){
$LogBodyObject.logbody | Add-Member -MemberType NoteProperty -Name $log.key -Value $log.value
}
$Body = ConvertTo-JSON $LogBodyObject
$Response = Invoke-Restmethod -uri $url -Body $Body -Method POST -ContentType "application/json"
return $Response
}
$Logs = @{
"<logmember1>"="<logvalue1>"
"<logmember2>"="<logvalue2>"
}
Send-Logs -LogType "<logtype>" -LogBodyList $Logs