FortigiLoggingLibary.psm1
####################################################################################################### # FortigiLogging # # By Maatschap Fortigi # Wim van den Heijkant (Wim@Fortigi.nl) # ####################################################################################################### Function Write-AILog { Param ( [Parameter(Mandatory=$True)] [string]$AIKey, [Parameter(Mandatory=$True)] $LogMessage, [parameter(Mandatory = $false)] [ValidateRange(0, 999)] [int] $ID ) #Load ApplicationInsights DLL $Dll = Get-Item "$PSScriptRoot\Microsoft.ApplicationInsights.dll" $NoCli = [Reflection.Assembly]::UnsafeLoadFrom($Dll) $InstrumentationKey = $AIKey $TelClient = New-Object "Microsoft.ApplicationInsights.TelemetryClient" $TelClient.InstrumentationKey = $InstrumentationKey $LogMessage = $ID.ToString() + ":" + $LogMessage $TelClient.TrackEvent($LogMessage) $TelClient.Flush() } |