PowerShell Script zur Durchforstung der Logs nach Korrelations-ID in SharePoint 8. Mai 2012

Wer mit SharePoint arbeitet, der weiß , dass die Logs sehr hilfreich sein können, da manche Fehlerursache nur so zu finden ist. Der schnellste Weg die Logs zu durchforsten ist per PowerShell. Wer lieber Fenster mag, der kann sich ruhig mal den ULS Viewer ansehen.

Ich habe hier ein relativ einfaches aber nützliches PowerShell-Script gebaut, das die SharePoint-Log-Datei nach der eingegebenen Korrelations-ID durchforstet und dabei nur die Einträge, die größer oder gleich dem eingegebenen Datum sind, durchsucht. Das Ergebnis wird dann in eine Datei geschrieben.

#Variableninitialisierung
$CorrIDLogFile = ‘C:\_CorrIDLogFiles\CorrIDLogFile.csv’ #Speicherort der Zieldatei
$corrID = 0
$startTime
$content =“”

#Funktion zum Füllen der Datei
function setLogFile ($content) {
Set-Content $CorrIDLogFile $content
}

#Werte von Tastatur einlesen
$corrID = Read-Host -Prompt “Bitte Korrelations-ID angeben:”
$startTime = Read-Host -Prompt“Ab wann soll durchforstet werden? Eingabe-Format dd/mm/yyyy hh:mm”

#Prüfen ob Datum angegeben wurde
if ($startTime) {
$content = Get-SPLogEvent -starttime $startTime | Where-Object {$_.Correlation -eq $corrID}
} else {
$content = Get-SPLogEvent | Where-Object {$_.Correlation -eq $corrID}
}

#Wenn Datei erreichbar ist, schreibe Daten da rein
if (Test-Path $corrIDLogFile) {
setLogFile ($content)
} else {
Write-Host “Datei ” + $corrIDLogFile + ” nicht gefunden!”
}

 

Leave a Reply

*