Alert 로그 내용을 Timestamp|Sequence|Message 형태로 변환하는 AWK 스크립트를 작성했습니다.
아래와 같이 log.awk 파일을 생성하겠습니다.
#!/usr/bin/awk
{
if (/^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}.[0-9]{6}\+[0-9]{2}:[0-9]{2}$/) {
ts = $0;
seq = 1;
}
else if ($0 != "") {
printf "%s|%03d|%s\n", ts, seq, $0
seq++;
}
}
테스트를 위해 아래와 같이 test.log 파일을 생성하겠습니다.
2050-01-01T00:00:01.000000+09:00
A
2050-01-01T00:00:02.000000+09:00
B
C
2050-01-01T00:00:03.000000+09:00
D
E
F
아래는 AWK 스크립트를 사용한 결과입니다.
$ awk -f log.awk test.log
2050-01-01T00:00:01.000000+09:00|001|A
2050-01-01T00:00:02.000000+09:00|001|B
2050-01-01T00:00:02.000000+09:00|002|C
2050-01-01T00:00:03.000000+09:00|001|D
2050-01-01T00:00:03.000000+09:00|002|E
2050-01-01T00:00:03.000000+09:00|003|F