실시간 저온 냉각기 모니터링 시스템 구현 및 적용
초록
본 논문은 Johns Hopkins University Speller Lab에서 개발한 Fridge Real Time Monitoring System(FRTMS)을 소개한다. FRTMS는 Bluefors LD400 희석냉각기의 로그 파일을 자동으로 복제·변환·업로드하여 MySQL 데이터베이스에 저장하고, Grafana 대시보드와 이메일·Slack 알림을 통해 원격 실시간 모니터링을 가능하게 한다.
상세 분석
FRTMS는 하드웨어와 소프트웨어가 유기적으로 결합된 데이터 파이프라인을 제공한다. 냉각기의 제어용 Bluefors 컴퓨터(BF)는 로그를 1분 간격으로 .LOG 파일에 기록하고, Windows Task Scheduler를 이용해 FreeFileSync 배치 명령으로 로컬 로그를 2 TB 외장 HDD와 JHU VAST 파일 서버에 일방향 복제한다. 복제된 파일은 별도의 인터페이스 컴퓨터(IC)로 전송되어, Anaconda 환경 하에 세 개의 Python 스크립트가 순차적으로 실행된다. 첫 번째 스크립트는 로그를 파싱해 필요한 파라미터(압력, 온도, 펌프 상태 등)만 추출하고, 결측값을 ‘null’ 혹은 더미값으로 채워 시간 순서가 유지되는 텍스트 파일로 재포맷한다. 두 번째 스크립트는 재포맷된 파일을 MySQL 커넥터를 통해 데이터베이스에 삽입한다. 삽입 전 파일 경로를 관리하는 메타 테이블을 조회해 중복 업로드를 방지하고, 기존 레코드와의 시간 정렬을 보장한다. 세 번째 스크립트는 VAST와 IC 양쪽의 파일 최신성을 확인하고, 지정된 지연 시간(최소·최대 임계값) 초과 시 Python EmailMessage 모듈로 이메일을 발송한다.
데이터베이스는 MySQL을 선택했으며, 시간 시리즈 컬럼을 기본 키로 하는 압력(p1‑p6)·온도(temp1‑temp8)·플로우·펌프 상태 테이블을 구성한다. 최근 30일 데이터는 메인 Grafana 대시보드에 실시간 그래프로 표시되고, 오래된 쿨다운 로그는 별도 ‘run’ 테이블에 옮겨 분석용 서브 대시보드로 제공한다. Grafana는 Slack 웹훅과 연동해 알림을 전송하며, 두 종류의 규칙(데이터 전송 지연 감시와 임계값 초과)을 정의한다. 지연 감시 규칙은 최근 50 레코드 중 20분 이상 업데이트되지 않은 경우 경고를 발생시키고, 임계값 규칙은 온도·압력 등 핵심 파라미터가 사전 정의된 안전 구간을 벗어나면 즉시 알림을 보낸다.
시스템의 장점은 (1) Bluefors 제어와 데이터 처리의 분리로 실시간 제어에 영향을 주지 않음, (2) 배치·스케줄링을 통한 자동화로 인력 개입 최소화, (3) MySQL‑Grafana 연동을 통한 시계열 시각화와 알림 기능 제공이다. 그러나 몇 가지 한계도 존재한다. 첫째, Windows 기반 스케줄러와 FreeFileSync에 의존하므로 운영체제 전환 시 재구성이 필요하다. 둘째, 로그 파싱 로직이 파일 구조 변화에 민감해 향후 Bluefors 소프트웨어 업데이트 시 코드 수정이 요구된다. 셋째, 데이터베이스 용량이 연간 수 GB 수준이지만, 장기 보관 및 백업 전략이 명시되지 않아 데이터 손실 위험이 있다. 넷째, 보안 측면에서 MySQL 접속 정보가 환경 파일에 평문으로 저장돼 있어, 키 관리 및 암호화가 권장된다.
향후 개선 방안으로는 (a) Docker 혹은 Conda‑env 기반 컨테이너화로 환경 일관성 확보, (b) 파일 시스템 감시(inotify 등)와 이벤트 기반 트리거를 도입해 1분 스케줄링 대신 실시간 동기화, (c) 시계열 전용 데이터베이스(InfluxDB, TimescaleDB)로 전환해 압축·쿼리 효율성 향상, (d) TLS·VPN을 통한 데이터베이스 접근 보안 강화, (e) 로그 포맷 표준화와 파싱 모듈을 모듈화하여 유지보수성을 높이는 것이 제안된다. 전반적으로 FRTMS는 저온 실험실의 운영 효율성을 크게 향상시킨 실용적인 솔루션이며, 오픈소스 코드와 상세 문서 제공으로 다른 연구기관에서도 재현·확장이 가능하다.
댓글 및 학술 토론
Loading comments...
의견 남기기