Skip to content

Instantly share code, notes, and snippets.

@hkarthik7
Created February 18, 2021 16:42
Show Gist options
  • Save hkarthik7/c1ca2e22063b7a0df7e1096447764358 to your computer and use it in GitHub Desktop.
Save hkarthik7/c1ca2e22063b7a0df7e1096447764358 to your computer and use it in GitHub Desktop.
LogParser script to parse http logs from azure web app
function LogParser {
# this comes in analysis section; So, need a place to store the files.
# We need a separate function to list this.
# Intended to run in pipeline
$report = @()
$files = Get-ChildItem -Path $PWD.Path -Filter "*.log"
foreach ($file in $files) {
$contents = Get-Content -Path $file.FullName | Select-Object -Skip 2
for ($i = 0; $i -lt $contents.Count; $i++) {
$value = $contents[$i].Split()
if ($value[-6] -notlike "*20*" -and $value[-6] -notlike "*30*") {
$h = [PSCustomObject]@{
"Date Time" = $value[0] + " " + $value[1]
"AppName" = $value[2]
"Method" = $value[3]
"Endpoint" = $value[4]
"IP" = $value[8]
"StatusCode" = $value[-6]
"Host" = $value[-7]
}
$report += $h
}
}
}
return $report
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment