Bash 스크립트 기초: 로그 파일 분석 (14일차)







로그 파일 분석 – Bash 스크립트 기초

로그 파일 분석 – Bash 스크립트 기초

안녕하세요, mj입니다! 오늘은 Bash 스크립트를 사용하여 로그 파일을 분석하는 방법에 대해 배워보겠습니다. 로그 파일 분석은 시스템 모니터링, 문제 해결 및 데이터 분석에 매우 중요한 작업입니다. 다양한 실습을 통해 로그 파일에서 유용한 정보를 추출하는 방법을 익혀보세요!

1. 로그 파일 분석의 중요성

로그 파일은 시스템이나 애플리케이션에서 발생하는 이벤트를 기록한 파일입니다. 이를 분석하면 시스템의 상태를 파악하고, 문제를 조기에 발견할 수 있습니다. 오늘은 로그 파일을 분석하는 다양한 스크립트를 작성해보겠습니다.

2. 실습 예제 1: 로그 파일 생성하기

먼저, 분석할 로그 파일을 생성해보겠습니다. 아래의 스크립트를 사용하여 샘플 로그 파일을 생성합니다:

#!/bin/bash

echo "2023-02-15 10:00:00 INFO: 시스템 시작" > log.txt
echo "2023-02-15 10:05:00 WARN: 메모리 부족" >> log.txt
echo "2023-02-15 10:10:00 ERROR: 파일을 열 수 없음" >> log.txt
echo "2023-02-15 10:15:00 INFO: 시스템 종료" >> log.txt

echo "log.txt 파일이 생성되었습니다."
cat log.txt

출력 결과 1

log.txt 파일이 생성되었습니다.
2023-02-15 10:00:00 INFO: 시스템 시작
2023-02-15 10:05:00 WARN: 메모리 부족
2023-02-15 10:10:00 ERROR: 파일을 열 수 없음
2023-02-15 10:15:00 INFO: 시스템 종료

3. 실습 예제 2: 특정 로그 검색하기

이제 생성한 로그 파일에서 특정 로그를 검색해보겠습니다. 아래의 스크립트를 사용하여 “ERROR” 로그를 찾습니다:

#!/bin/bash

echo "ERROR 로그를 검색합니다:"
grep "ERROR" log.txt

출력 결과 2

ERROR 로그를 검색합니다:
2023-02-15 10:10:00 ERROR: 파일을 열 수 없음

4. 실습 예제 3: 로그 파일에서 특정 날짜의 로그 추출하기

특정 날짜의 로그를 추출하는 방법도 알아보겠습니다. 아래의 스크립트는 2023-02-15 날짜의 로그를 필터링합니다:

#!/bin/bash

echo "2023-02-15 날짜의 로그를 추출합니다:"
grep "2023-02-15" log.txt

출력 결과 3

2023-02-15 날짜의 로그를 추출합니다:
2023-02-15 10:00:00 INFO: 시스템 시작
2023-02-15 10:05:00 WARN: 메모리 부족
2023-02-15 10:10:00 ERROR: 파일을 열 수 없음
2023-02-15 10:15:00 INFO: 시스템 종료

5. 실습 예제 4: 로그 요약하기

로그 파일의 요약 정보를 출력하는 방법도 알아보겠습니다. 아래의 스크립트는 로그 파일의 각 로그 레벨별 개수를 출력합니다:

#!/bin/bash

echo "로그 레벨별 개수:"
echo "INFO 로그 개수: \$(grep -c "INFO" log.txt)"
echo "WARN 로그 개수: \$(grep -c "WARN" log.txt)"
echo "ERROR 로그 개수: \$(grep -c "ERROR" log.txt)"

출력 결과 4

로그 레벨별 개수:
INFO 로그 개수: 2
WARN 로그 개수: 1
ERROR 로그 개수: 1

6. 실습 예제 5: 날짜별 로그 분석하기

날짜별 로그를 분석하여 요약 정보를 제공하는 스크립트를 작성해보겠습니다:

#!/bin/bash

echo "날짜별 로그 요약:"
awk '{print $1}' log.txt | sort | uniq -c

출력 결과 5

날짜별 로그 요약:
      4 2023-02-15

7. 결론

오늘은 Bash 스크립트를 사용하여 로그 파일을 분석하는 방법을 배워보았습니다. 로그 파일 생성, 특정 로그 검색, 날짜별 로그 추출, 로그 요약 등 다양한 실습을 통해 로그 파일을 효과적으로 관리할 수 있는 기술을 익혔습니다. 다음 포스팅에서는 로그 파일 분석의 고급 기술을 다뤄보겠습니다.

감사합니다!


Leave a Comment