Skip to main content

알람규칙 목록

개요​

이 화면은 무엇인가요?

센서 태그의 값이 설정된 조건을 만족하면 자동으로 알람을 발생시키는 규칙을 생성·관리하는 화면입니다. 임계값(threshold), 변화율(rate_of_change), 편차(deviation), 패턴(pattern) 등 다양한 조건 유형을 지원하며, 에스컬레이션 정책과 알림 채널도 함께 설정합니다.

누가 사용하나요?​

  • IoT 엔지니어: 알람 규칙 생성, 임계값 설정, 조건 튜닝

언제 사용하나요?​

  • 태그에 새로운 알람 조건을 추가하거나 기존 임계값을 변경할 때
  • 알람 오발생(chattering)을 줄이기 위해 히스테리시스나 중복제거간격을 조정할 때
  • 에스컬레이션 정책을 설정하거나 알림 채널을 변경할 때

주요 기능​

  • 4가지 조건 유형: threshold, rate_of_change, deviation, pattern
  • 히스테리시스 설정: 알람 반복 발생(chattering) 방지
  • 자동 해제: 정상 복귀 시 알람 자동 해제 (지연 시간 설정 가능)
  • 에스컬레이션: 미확인 시 설정 시간 후 상위자에게 자동 전달
  • 다채널 알림: 이메일, SMS, 메신저, 인앱 알림 동시 설정
  • CSV 가져오기/내보내기: 규칙 일괄 등록·백업

입력 항목 가이드​

기본정보​

항목설명필수입력 예시
규칙코드알람 규칙 식별 코드✅ALM-TEMP-HIGH-01
규칙명알람 규칙 이름✅로봇1호기 모터온도 상한
태그감시 대상 센서 태그✅데이터태그 목록에서 선택
설비자산관련 설비 (선택)설비자산 트리에서 선택
심각도알람의 심각 수준✅info / warning / critical / emergency
조건유형알람 트리거 조건✅threshold / rate_of_change / deviation / pattern
알람분류알람의 업무 분류process / safety / quality / maintenance / environment
사용여부규칙 활성화 상태기본값: 활성

임계값/조건​

항목설명필수입력 예시
상한임계값이 값을 초과하면 알람 발생80.0
하한임계값이 값 미만이면 알람 발생10.0
히스테리시스알람 해제를 위한 값 차이2.0
중복제거간격(초)동일 알람 재발생 방지 시간300 (5분)
자동해제정상 복귀 시 알람 자동 해제활성화 권장
자동해제지연(초)자동 해제까지 대기 시간60 (1분)

에스컬레이션/담당​

항목설명필수입력 예시
에스컬레이션타임아웃(분)미확인 시 상위자 전달까지의 시간30 (30분)
알림채널알람 발생 시 알림 전송 채널["email", "sms", "messenger"]
담당자알람 1차 담당자사용자 선택

자주 묻는 질문 (FAQ)​

알람이 너무 자주 발생합니다(chattering). 어떻게 줄이나요?

다음 설정을 조정하세요:

  1. 히스테리시스 증가: 임계값 근처 미세 변동에 의한 반복 발생 방지
  2. 중복제거간격 증가: 같은 규칙의 알람이 짧은 시간 내 재발생하는 것 방지
  3. 데드밴드 조정: 태그 설정에서 데드밴드를 높여 미세 변동 자체를 무시
rate_of_change 조건은 어떻게 설정하나요?

조건설정(condition_config) JSON에 다음을 입력합니다:

  • timeWindowSec: 변화율을 측정할 시간 창 (초)
  • maxRateOfChange: 허용 최대 변화량

예: 10초 내 온도 5°C 이상 급상승 감지 → { "timeWindowSec": 10, "maxRateOfChange": 5 }


실무 시나리오​

안전 알람 규칙 설정 (Emergency)​

상황: 가열로의 온도가 200°C를 초과하면 Emergency 알람을 발생시키고, 즉시 모든 채널로 알림을 보내야 합니다.

처리 순서:

  1. 규칙코드 ALM-HEATER-EMERG으로 규칙을 생성합니다
  2. 심각도 emergency, 조건유형 threshold, 상한임계값 200
  3. 히스테리시스 5, 자동해제 비활성화 (수동 확인 필수)
  4. 에스컬레이션타임아웃 5분 (5분 내 미확인 시 공장장에게 전달)
  5. 알림채널 ["email", "sms", "messenger", "in_app"] — 전 채널 동시 발송
  6. 알람분류 safety로 설정합니다

참고: 데이터 구조

알람규칙 테이블 (alarm_rules)​

컬럼명한글명타입설명
rule_code규칙코드VARCHAR *필수 *고유-
rule_name규칙명VARCHAR *필수-
tag_id태그IDUUID (FK) *필수data_tags 참조
severity심각도ENUM *필수info/warning/critical/emergency
condition_type조건유형ENUM *필수threshold/rate_of_change/deviation/pattern
condition_config조건설정JSONB *필수조건 상세 JSON
threshold_high상한임계값DECIMAL-
threshold_low하한임계값DECIMAL-
hysteresis히스테리시스DECIMALchattering 방지
dedup_interval_sec중복제거간격(초)INT-
auto_clear자동해제BOOLEAN-
escalation_timeout_min에스컬레이션타임아웃(분)INT-
notify_channels알림채널JSONB["email","sms","messenger"]
assignee_id담당자IDUUID (시스템참조)-