## 문서 목적

관리자가 대시보드에 접속했을 때 가장 먼저 무엇을 봐야 하는지, 임계 경보가 발생했을 때 어떤 순서로 확인해야 하는지, 1번/2번 센서의 온습도 상태를 어떻게 판독해야 하는지 설명한다.

이 문서의 캡처는 운영 대시보드와 동일한 구성으로 만든 예시 화면이다. 실제 숫자, 시간, 측정값은 운영 DB 데이터에 따라 달라진다.

## 관리자가 매일 확인할 것

임계 경보 0건인지 확인. 1건 이상이면 해당 센서의 온습도와 임계 초과 항목을 확인.
오프라인 0대인지 확인. 오프라인이면 Pi 전원/네트워크/API 점검.
센서 온습도 1번·2번 센서의 온도/습도와 최신 측정 시간이 갱신되는지 확인.
운영 자가진단 API 키, DB 테이블, SMS 실패 경고를 확인.

## 1. 접속과 로그인

브라우저에서 운영 URL의 `dashboard.php`로 접속한다. 반드시 HTTPS 주소를 사용한다.

관리자 계정으로 로그인한다. 공용 PC에서는 저장된 비밀번호를 사용하지 않는다.

작업 완료 후 우측 상단 `로그아웃`을 눌러 세션을 종료한다.

로그인이 반복해서 풀리면 서버 시간, 세션 저장 경로, 브라우저 쿠키 차단 여부를 확인한다.

## 2. 첫 화면에서 보는 순서

데스크톱 대시보드 예시 캡처. 상단 상태바, 온습도 추이, 자가진단, 요약 카드, 센서 카드 순서로 확인한다. ※ 캡처 이미지는 SHT30 화면으로 재촬영 필요.
상단 상태바정상이면 운영 경고 없음. 주의나 위험이면 바로 하단 세부 항목을 확인한다.
요약 카드등록 센서, 임계 경보, 오프라인, 30일 임계 SMS, SMS 실패를 빠르게 확인한다.
운영 자가진단 API 키, DB 테이블, sensor_metric 저장, SMS 실패 등 운영 준비 상태를 보여준다.

## 3. 센서 상태 판독

센서 카드는 현장의 장비별 온습도 상태를 보여준다. 정상/임계 경보/오프라인 우선순위로 색상이 바뀐다.

센서 | 관리자가 확인할 내용 | 주의 기준
--- | --- | ---
1번 센서 | SHT30 온습도 장비. 온도, 습도, 측정 시간이 표시된다. | 온습도 값이 사라짐, 측정 시간이 갱신되지 않음, 임계 초과, 오프라인 표시.
2번 센서 | SHT30 온습도 장비. 온도, 습도, 측정 시간이 표시된다. | 온습도 값이 사라짐, 측정 시간이 갱신되지 않음, 임계 초과, 오프라인 표시.

센서가 정상이라면 카드 안에 `온도 24.3C`, `습도 48.1%` 같은 최신값이 표시된다. 임계(고온 30C / 저온 10C / 고습 70% / 저습 20%)를 넘으면 경보 SMS가 발송된다.

## 4. 임계 경보 확인 순서

온습도 추이 영역 예시 캡처. 임계(고온/저온/고습/저습)를 넘으면 경보 SMS가 발송되고 추이 차트와 임계 SMS 이력에 표시된다. ※ 캡처 이미지는 SHT30 화면으로 재촬영 필요.

임계 경보 건수가 1건 이상이면 해당 센서의 온도/습도와 초과 항목을 먼저 확인한다.

온습도 추이 차트에서 값이 임계선을 넘은 시점과 지속 시간을 확인한다.

임계 경보 SMS 이력에서 고온/저온/고습/저습 중 어떤 종류의 경보가 발송됐는지 확인한다.

값이 임계 안으로 돌아오면 `정상복귀` SMS가 발송된다. 복귀 여부를 이력에서 확인한다.

임계 경보가 반복되면 서버실 공조/환기 상태와 센서 설치 위치를 점검한다. 오프라인 경보가 함께 뜨면 Pi 전원/네트워크부터 확인한다.

## 5. 온습도 추이, 로그, SMS, 월간 보고서

온습도 추이 차트센서별 온도/습도 시계열과 임계선을 확인한다. 임계 초과 구간이 강조된다.
최근 이벤트 로그정기보고, 임계 경보, 정상복귀, 오프라인, 장비 시작 이벤트를 시간순으로 확인한다.
SMS 발송 이력임계 경보 문자 성공/실패, 수신자, 결과 메시지를 확인한다.

### 월간 보고서

상단 `월간 보고서`에서 월별 종류별 임계 경보 SMS 건수, 정상복귀/오프라인/복구 건수, 평균/최저/최고 온습도, CSV 다운로드를 확인한다. 대외 제출용은 인쇄/PDF 저장으로 보관한다.

## 6. 모바일에서 빠르게 확인하기

모바일 예시 캡처. 상단 요약 카드와 빠른 링크를 먼저 보고 필요한 섹션으로 이동한다. ※ 캡처 이미지는 SHT30 화면으로 재촬영 필요.

모바일에서는 표와 상세 로그가 접히거나 가로 스크롤로 보일 수 있다. 긴급 상황에서는 `임계 경보`, `오프라인`, `평균 온도`, `평균 습도` 네 항목을 먼저 확인한다.

## 7. 이상 상태별 조치

화면 표시 | 의미 | 관리자 조치
--- | --- | ---
임계 경보 1건 이상 | 온도 또는 습도가 임계(고온 30C / 저온 10C / 고습 70% / 저습 20%)를 넘었다. | 온습도 추이와 초과 항목 확인 → 서버실 공조/환기 점검 → 정상복귀 SMS 수신 확인.
오프라인 1대 이상 | 라즈베리파이가 heartbeat 시간 안에 보고하지 않았다. | 전원, 네트워크, systemd 서비스, API URL/API_KEY 확인.
센서 온습도 미표시 | SHT30 데이터가 저장되지 않았거나 측정이 실패했다. | `sensor_metric` 테이블, `sht30-sensor` 서비스, I2C 주소 `0x44/0x45` 확인.
SMS 실패 | Cafe24 SMS 연동 또는 수신자 설정 문제가 있다. | SMS 계정, 잔액, 발신번호, 수신자 번호, 서버 외부 통신 가능 여부 확인.
API 키 경고 | 운영 키가 기본값이거나 Pi와 서버 키가 다를 수 있다. | 서버 `config.local.php`와 Pi 환경파일의 `LEAK_API_KEY`를 동일하게 맞춘다.