Ⅳ-5. 장애 전조 데이터의 지속시간과 반복성 분석
컴퓨터 시스템에서 이상한 성능 변화가 한 번 발생했다고 해서 이를 바로 장애 전조라고 판단하기는 어렵다.
순간적인 CPU 사용률 증가나 일시적인 네트워크 지연은 정상적인 작업 과정에서도 발생할 수 있기 때문이다.
따라서 장애 전조를 분석할 때는 이상값 자체뿐만 아니라 얼마나 오래 지속되었는지, 몇 번 반복되었는지, 어떤 간격으로 발생했는지, 시간이 지나면서 변화가 커졌는지를 함께 확인해야 한다.
지속시간과 반복성은 단순한 이상 여부를 넘어 해당 현상이 일시적인 변동인지, 반복적으로 나타나는 의미 있는 패턴인지 판단하는 기준이 될 수 있다.
1. 이상 상태의 지속시간을 기록해야 하는 이유
동일한 성능 지표가 같은 수준까지 증가하더라도 지속시간에 따라 시스템에 미치는 영향은 달라질 수 있다.
예를 들어 CPU 사용률이 95%까지 증가했다고 하더라도 몇 초 후 정상으로 돌아온 경우와 수십 분 동안 높은 상태가 유지된 경우는 동일하게 평가하기 어렵다.
따라서 이상 상태를 분석할 때는 최소한 다음 정보를 함께 기록할 필요가 있다.
- 이상 상태 시작 시점
- 이상 상태 종료 시점
- 전체 지속시간
- 이상 상태의 최대 수준
- 정상 상태로 돌아오는 데 걸린 시간
이렇게 해야 단순히 “이상이 발생했다”에서 끝나지 않고 “얼마나 오래 유지되었는가”를 판단할 수 있다.
2. 단발성 이상과 반복성 이상을 구분한다
한 번 발생하고 사라진 이상과 일정한 조건에서 반복되는 이상은 구분해야 한다.
단발성 이상은 일시적인 작업이나 외부 사건으로 발생했을 가능성이 있다.
반면 비슷한 이상이 반복된다면 특정 작업, 시간대, 부하 조건 또는 시스템 상태와의 관계를 조사할 필요가 있다.
다만 반복된다는 사실 자체가 장애 전조를 의미하는 것은 아니다.
정상적인 백업이나 배치 작업도 반복적으로 성능 변화를 만들 수 있기 때문이다.
따라서 반복성은 장애 전조의 증거라기보다 추가 분석이 필요한 중요한 단서로 보는 것이 정확하다.
3. 지속시간과 시스템 영향은 함께 봐야 한다
이상 상태가 오래 지속된다고 해서 반드시 장애가 발생하는 것은 아니다.
반대로 짧은 시간 동안 발생한 이상이라도 서비스 응답시간이나 오류 발생에 직접 영향을 주었다면 중요하게 판단해야 할 수 있다.
예를 들어 저장장치 지연이 증가했더라도 시스템에 충분한 여유가 있다면 서비스 영향이 없을 수 있다.
따라서 지속시간은 단독으로 평가하기보다 다음 항목과 함께 확인해야 한다.
- 이상 상태의 크기
- 지속시간
- 시스템 여유 자원
- 서비스 응답시간
- 오류 및 타임아웃
- 실제 장애 발생 여부
즉, 오래 지속되었다는 사실과 실제 서비스 영향은 별도로 확인해야 한다.
4. 반복 횟수를 분석한다
특정 이상 현상이 얼마나 자주 발생했는지도 중요한 분석 대상이다.
예를 들어 특정 오류나 지연이 하루에 한 번 발생하는 것과 한 시간에 여러 번 발생하는 것은 조사 방향이 달라질 수 있다.
특히 과거 데이터에서 다음과 같은 변화가 확인된다면 주의해서 볼 필요가 있다.
1일 1회 → 하루 3회 → 하루 10회
이러한 증가가 장애 발생 이전에 반복적으로 나타났다면 이상 현상의 발생 빈도 자체가 변화하고 있는지 조사할 수 있다.
하지만 단순히 횟수가 증가했다고 해서 장애 발생 가능성이 증가했다고 수치로 단정해서는 안 된다.
실제 장애 사례와 정상 사례를 비교해야 그 의미를 판단할 수 있다.
5. 반복 간격을 분석한다
반복 횟수뿐만 아니라 이상 현상이 발생하는 시간 간격도 확인할 수 있다.
예를 들어 다음과 같이 반복 간격이 변할 수 있다.
60분 → 45분 → 30분 → 15분
이러한 현상이 실제 장애 이전에 반복적으로 나타난다면 시스템 상태가 변화하고 있는지 조사할 가치가 있다.
반대로 항상 매일 오전 2시에 동일한 이상이 발생한다면 예약된 백업이나 정기 작업과 관련되었을 가능성을 먼저 확인해야 한다.
따라서 반복 간격은 규칙적인지, 불규칙적인지, 점점 짧아지는지를 함께 확인하는 것이 중요하다.
6. 지속시간이 점점 길어지는 경우
반복되는 이상 현상의 지속시간 자체가 증가하는 경우도 있다.
예를 들어 특정 작업 중 발생하는 I/O 지연이 다음과 같이 변화한다고 가정할 수 있다.
| 발생 시점 | 지속시간 |
|---|---|
| 1회차 | 10초 |
| 2회차 | 20초 |
| 3회차 | 45초 |
| 4회차 | 2분 |
단순히 네 번 반복되었다는 사실보다 각 이상 상태가 점점 오래 지속되고 있다는 변화가 더 중요한 정보가 될 수 있다.
이 경우 작업량 증가, 자원 여유 감소, 처리 지연 누적 등의 가능성을 함께 확인해야 한다.
7. 반복 횟수와 지속시간이 동시에 증가하는 경우
반복 횟수와 지속시간이 동시에 증가한다면 단발성 이상보다 더 자세한 분석이 필요하다.
예를 들어 초기에는 하루 한 번 10초 동안 발생하던 이상이 시간이 지나면서 하루 다섯 번, 한 번 발생할 때마다 2분씩 지속된다면 이상 상태의 빈도와 지속성이 모두 변화한 것이다.
이러한 변화가 과거 장애 직전에 반복적으로 나타났다면 조기탐지 후보로 검토할 가치가 높아진다.
그러나 이 역시 장애와의 관계를 검증해야 하며, 단순한 증가만으로 장애를 예측할 수 있는 것은 아니다.
8. 이상 상태가 점점 짧은 간격으로 발생하는 경우
반복되는 이상 사이의 간격이 점점 짧아지는 경우에는 변화의 방향을 확인해야 한다.
예를 들어 동일한 오류 또는 성능 저하가 처음에는 한 시간 간격으로 발생하다가 이후 20분, 10분 간격으로 나타난다면 단순한 반복보다 발생 빈도의 변화에 의미가 있을 수 있다.
특히 이러한 변화와 함께 응답시간 증가, 오류 증가, 자원 여유 감소 등이 나타난다면 여러 지표의 시간적 관계를 함께 분석해야 한다.
9. 정상적인 반복 작업과 구분한다
반복성만으로 장애 전조를 판단하면 오탐이 많아질 수 있다.
예를 들어 매일 오전 1시에 백업 작업이 실행되면서 저장장치 I/O가 증가한다면 해당 현상은 반복적이지만 정상적인 운영 패턴일 가능성이 높다.
따라서 반복되는 이상이 발견되면 다음을 함께 확인해야 한다.
- 예약된 작업이 있는가
- 배치 작업 시간과 일치하는가
- 사용자 요청량이 증가하는 시간인가
- 정기적인 백업 또는 보안 검사가 실행되는가
- 과거에도 같은 현상이 발생했는가
- 해당 현상 이후 실제 서비스 장애가 발생했는가
반복성 자체보다 반복의 원인이 무엇인지 확인하는 과정이 중요하다.
10. 장애 전조의 누적성을 확인한다
장애 전조는 한 번 나타났다가 사라지는 형태보다 시간이 지나면서 특성이 변화하는 형태로 나타날 수도 있다.
예를 들어 다음과 같은 변화가 반복될 수 있다.
오류 증가 → 응답시간 증가 → 이상 발생 빈도 증가 → 이상 지속시간 증가 → 서비스 장애
이 경우 각각의 현상을 별도로 보는 것보다 시간에 따른 변화 방향을 함께 확인해야 한다.
특히 여러 장애 사례에서 비슷한 순서가 반복된다면 해당 패턴의 분석 가치가 높아진다.
11. 지속시간과 반복성의 관계를 함께 본다
지속시간과 반복 횟수는 각각 별개의 정보지만 함께 분석하면 더 많은 정보를 얻을 수 있다.
예를 들어 다음과 같이 구분할 수 있다.
| 패턴 | 해석 방향 |
|---|---|
| 짧고 1회 발생 | 일시적 변동 가능성 확인 |
| 짧고 반복 | 반복 작업 또는 간헐적 문제 확인 |
| 길고 1회 발생 | 특정 사건 또는 작업 영향 확인 |
| 길고 반복 | 반복 작업과 시스템 영향 관계 확인 |
| 지속시간·횟수 모두 증가 | 상태 변화 여부 집중 분석 |
이 표는 장애 위험을 자동으로 판단하는 기준이 아니다.
각 패턴에서 실제 서비스 영향과 과거 장애 사례가 어떻게 나타났는지 확인하기 위한 분석 틀이다.
12. 반복 간격의 규칙성과 불규칙성을 구분한다
일정한 간격으로 발생하는 이상과 불규칙하게 발생하는 이상은 조사 방법이 다를 수 있다.
규칙적인 반복이라면 예약 작업이나 주기적인 처리와의 관계를 우선 확인할 수 있다.
반대로 불규칙한 반복이라면 사용자 요청량, 자원 상태, 네트워크 조건, 특정 프로세스 실행 등 다른 조건과의 관계를 찾아야 한다.
따라서 단순히 “몇 번 발생했는가”보다 “어떤 조건에서 어떤 간격으로 발생했는가”가 중요하다.
13. 장애가 발생하지 않은 사례도 함께 비교한다
지속시간과 반복성이 실제 장애 전조인지 확인하려면 정상 사례와 비교해야 한다.
예를 들어 CPU 90% 이상 상태가 10분 동안 지속되는 현상이 장애 전에 나타났다고 하더라도, 정상적인 운영에서도 같은 조건이 자주 발생한다면 해당 조건만으로 장애 전조라고 판단하기 어렵다.
반대로 정상 상태에서는 거의 나타나지 않고 여러 장애 사례에서 반복적으로 확인된다면 분석 가치가 높아진다.
따라서 다음 두 집단을 비교하는 것이 중요하다.
장애 발생 사례
vs
동일한 조건이지만 장애가 발생하지 않은 사례
이 비교가 있어야 지속시간과 반복성의 의미를 제대로 판단할 수 있다.
14. 과거 장애 사례에서 기준을 찾아야 한다
장애 전조의 지속시간이나 반복 횟수에 보편적으로 적용할 수 있는 하나의 기준은 없다.
예를 들어 어떤 시스템에서는 5분간의 지연이 중요한 변화일 수 있지만 다른 시스템에서는 정상적인 작업 범위일 수 있다.
따라서 과거 장애 데이터를 이용해 다음을 확인하는 것이 좋다.
- 장애 전 이상 상태의 평균 지속시간
- 가장 짧았던 지속시간
- 반복 횟수
- 반복 간격
- 지속시간 증가 여부
- 반복 횟수 증가 여부
- 실제 서비스 영향 발생 시점
이 데이터를 바탕으로 해당 시스템에 맞는 분석 기준을 설정할 수 있다.
15. 임계값과 지속시간 조건을 함께 사용할 수 있다
단순히 특정 수치를 초과했는지만 확인하는 것보다 수치와 지속시간을 함께 조건으로 설정할 수 있다.
예를 들어 다음과 같은 형태다.
CPU 사용률이 정상 범위를 초과하고 10분 이상 지속
또는
응답시간이 기준을 초과하는 현상이 5분 이내에 3회 이상 발생
이러한 방식은 순간적인 변동으로 발생하는 불필요한 경보를 줄이는 데 도움이 될 수 있다.
다만 기준값과 지속시간은 시스템의 정상 운영 특성과 과거 장애 데이터를 바탕으로 설정해야 한다.
16. 경보 기준과 장애 판단 기준은 구분한다
중요한 점은 조기탐지 경보가 발생했다고 해서 장애가 발생했다는 의미는 아니라는 것이다.
예를 들어 다음과 같은 단계로 구분할 수 있다.
정상 범위
→ 이상 변화 감지
→ 지속시간 조건 충족
→ 반복 조건 확인
→ 관련 지표 변화 확인
→ 서비스 영향 확인
→ 장애 대응 판단
이처럼 경보는 조사를 시작하기 위한 신호이고, 최종 장애 판단과는 구분해야 한다.
17. 지속시간과 반복성을 실제 데이터로 분석한다
실제 분석에서는 이상 현상을 단순한 목록으로 관리하기보다 발생 이력을 구조화하면 유용하다.
| 발생시각 | 종료시각 | 지속시간 | 반복 간격 | 주요 변화 | 서비스 영향 |
|---|---|---|---|---|---|
| 10:00 | 10:00:10 | 10초 | – | I/O 증가 | 없음 |
| 11:00 | 11:00:25 | 25초 | 60분 | I/O 증가 | 없음 |
| 11:40 | 11:41:00 | 1분 | 40분 | I/O 증가 | 지연 |
| 12:05 | 12:07:30 | 2분 30초 | 25분 | I/O 증가 | 오류 증가 |
이렇게 정리하면 단순한 반복보다 지속시간과 반복 간격이 함께 변화하고 있는지 확인하기 쉬워진다.
18. 반복성이 높아도 장애와 관계가 없을 수 있다
어떤 이상 현상이 매우 자주 반복된다고 해서 반드시 장애 위험이 높은 것은 아니다.
정상적인 시스템에서도 반복적인 작업은 수없이 발생한다.
예를 들어 매분 실행되는 모니터링 작업이 CPU 사용률을 일시적으로 증가시킨다면 반복 횟수는 매우 높지만 장애와는 관계가 없을 수 있다.
따라서 반복 횟수는 독립적인 장애 판단 기준이 아니라 다른 데이터와 함께 해석해야 하는 분석 변수다.
19. 지속시간이 길어져도 반드시 장애로 이어지는 것은 아니다
마찬가지로 이상 상태가 오래 지속되었다는 이유만으로 장애가 발생한다고 판단할 수 없다.
시스템에 충분한 자원 여유가 있고 서비스 응답시간이나 오류가 정상이라면 높은 자원 사용률이 장시간 유지되더라도 실제 장애로 이어지지 않을 수 있다.
따라서 지속시간은 반드시 서비스 영향과 함께 확인해야 한다.
이것이 단순한 임계값 감시와 장애 전조 분석의 중요한 차이점이다.
20. 장애 전조 후보를 실제 기준으로 검증한다
지속시간과 반복성을 활용한 기준을 만들었다면 실제 운영 데이터에서 다시 검증해야 한다.
예를 들어 다음 조건을 장애 전조 후보로 설정했다고 가정할 수 있다.
“특정 응답시간 이상 상태가 10분 이내 3회 이상 발생”
이 기준을 과거 데이터에 적용하여 다음을 확인할 수 있다.
- 실제 장애 전에 얼마나 자주 발생했는가
- 정상 상태에서도 얼마나 자주 발생했는가
- 경보 이후 실제 장애까지 얼마나 시간이 있었는가
- 경보가 발생했지만 장애가 없었던 경우는 얼마나 되는가
이 과정을 통해 경보가 지나치게 민감하거나 반대로 너무 늦게 발생하는지 확인할 수 있다.
21. 지속시간과 반복성 분석의 실무 절차
실제 시스템에서는 다음과 같은 순서로 분석할 수 있다.
① 이상 상태 정의
→ ② 발생 시작·종료 시점 기록
→ ③ 지속시간 계산
→ ④ 반복 횟수 확인
→ ⑤ 반복 간격 계산
→ ⑥ 지속시간과 반복 횟수의 변화 확인
→ ⑦ 정상적인 주기 작업 여부 확인
→ ⑧ 장애 발생 사례와 비교
→ ⑨ 장애가 발생하지 않은 사례와 비교
→ ⑩ 다른 성능 지표 및 로그와 시간축 비교
→ ⑪ 조기탐지 기준 후보 설정
→ ⑫ 실제 운영 데이터로 재검증
이 과정을 거쳐야 단순히 “이상이 자주 발생한다”는 수준에서 벗어나 실제 장애 전조로 활용할 수 있는 패턴인지 판단할 수 있다.
22. 분석 결과를 실제 예방으로 연결한다
지속시간과 반복성이 의미 있는 패턴으로 확인되었다면 그 다음은 대응 기준을 연결하는 것이다.
예를 들어 다음과 같이 구성할 수 있다.
응답시간 이상 반복 감지
→ 반복 간격 확인
→ 특정 프로세스 또는 작업 확인
→ 관련 자원 상태 확인
→ 서비스 영향 확인
→ 과거 장애 사례와 비교
→ 필요 시 선제적 조치
중요한 것은 경보를 많이 만드는 것이 아니라 실제 장애 전에 대응할 수 있는 충분한 시간을 확보하는 것이다.
23. 지속시간과 반복성 분석의 한계
모든 장애 전조가 지속시간이나 반복성을 통해 발견되는 것은 아니다.
갑작스러운 전원 장애, 즉시 발생하는 하드웨어 고장, 물리적인 연결 단절처럼 사전 데이터에 충분한 변화가 남지 않는 장애도 있다.
또한 데이터 수집 간격이 너무 길면 짧게 발생한 이상을 놓칠 수 있고, 반대로 지나치게 짧은 간격으로 수집하면 정상적인 미세 변동까지 과도하게 감지할 수 있다.
따라서 지속시간과 반복성 분석은 모든 장애를 예측하는 방법이 아니라 반복적으로 관찰되는 장애 전조 후보를 선별하고 검증하는 방법으로 이해해야 한다.
24. 최종 판단 — 지속성과 반복성이 있어야 의미가 생기는 것은 아니다
장애 전조를 판단할 때 지속시간과 반복성은 매우 중요한 분석 요소지만, 오래 지속되거나 자주 반복된다는 이유만으로 장애 전조라고 확정해서는 안 된다.
반대로 한 번만 나타난 짧은 이상이라도 실제 장애 직전에 반복적으로 확인되고 서비스 영향과 연결된다면 중요한 신호가 될 수 있다.
결국 중요한 것은 지속시간과 반복 횟수 그 자체가 아니라, 그 특성이 과거 장애와 어떤 관계를 가지고 있는지다.
25. 핵심정리
- 이상 상태는 발생 여부뿐 아니라 시작 시점, 종료 시점, 지속시간을 함께 기록해야 한다.
- 반복 횟수뿐 아니라 반복 간격과 그 간격이 변화하는 방향도 확인해야 한다.
- 지속시간이나 반복 횟수가 증가한다고 해서 장애 위험이 자동으로 증가하는 것은 아니다.
- 정상적인 주기 작업과 장애 관련 반복 현상을 구분해야 한다.
- 장애 사례와 정상 사례를 비교하여 지속시간·반복성이 실제 장애와 연결되는지를 검증해야 한다.
- 조기탐지 기준은 단일 임계값보다 이상 수준 + 지속시간 + 반복성 + 다른 지표 + 실제 서비스 영향을 함께 고려할 때 더 유용해질 수 있다.
결국 핵심은 이것이다.
“이상이 얼마나 오래, 얼마나 자주 나타났는가보다 그 지속성과 반복성이 실제 장애 이전에 반복적으로 나타났으며, 사전에 대응할 만큼 의미 있는 신호였는가를 확인하는 것이 중요하다.”




댓글 0
첫 댓글을 남겨보세요.