mirror of
https://gitlab.com/manzerbredes/loosely-coupled-dss.git
synced 2025-04-06 03:26:24 +02:00
48 lines
No EOL
884 B
Awk
Executable file
48 lines
No EOL
884 B
Awk
Executable file
#!/usr/bin/awk -f
|
|
|
|
BEGIN {
|
|
RS=" "
|
|
CSV_HEADER=""
|
|
CSV_DATA=""
|
|
}
|
|
|
|
/LOG2PARSE/{
|
|
# First extract what we need
|
|
to_parse=$1
|
|
gsub(/\[LOG2PARSE\]\(/,"",to_parse)
|
|
gsub(/\)/,"",to_parse)
|
|
split(to_parse,tokens,"|")
|
|
|
|
# Check if we have to build the csv header
|
|
if(CSV_HEADER==""){
|
|
for(i = 1; i<length(tokens);i++){
|
|
split(tokens[i],h,":")
|
|
if(CSV_HEADER=="")
|
|
CSV_HEADER=h[1]
|
|
else
|
|
CSV_HEADER=CSV_HEADER","h[1]
|
|
}
|
|
}
|
|
|
|
# Build a row
|
|
row=""
|
|
for(i = 1; i<length(tokens);i++){
|
|
split(tokens[i],h,":")
|
|
if(row=="")
|
|
row=h[2]
|
|
else
|
|
row=row","h[2]
|
|
}
|
|
|
|
# Add the row to the csv data
|
|
if(CSV_DATA=="")
|
|
CSV_DATA=row
|
|
else
|
|
CSV_DATA=CSV_DATA"\n"row
|
|
}
|
|
|
|
|
|
END {
|
|
print(CSV_HEADER);
|
|
print(CSV_DATA)
|
|
} |