피드로 돌아가기
I Built Windows11Alert — A Windows Utility That Sends Telegram Alerts When My PC Turns On
Dev.toDev.to
Infrastructure

Windows Event Log 기반의 비동기 알림 설계를 통한 셧다운 감지 신뢰성 확보

I Built Windows11Alert — A Windows Utility That Sends Telegram Alerts When My PC Turns On

Akshay2026년 5월 18일7beginner

Context

PC 부팅 및 종료 상태를 실시간 모니터링하여 Telegram으로 전송하는 경량 유틸리티 설계. 초기에는 셧다운 시점에 즉시 알림을 전송하려 했으나, Windows의 네트워크 서비스 조기 종료로 인한 패킷 손실 및 전송 실패라는 기술적 제약에 직면함.

Technical Solution

  • 셧다운 시점의 실시간 전송 방식에서 부팅 후 사후 분석 방식으로 아키텍처 전환
  • Windows Event Log의 Event ID(1074, 6006, 6008)를 추적하여 이전 종료 상태를 판별하는 상태 복구 로직 구현
  • Windows Registry(HKEY_CURRENT_USER) 등록을 통한 사용자 로그인 시 자동 실행 메커니즘 구축
  • .env 파일을 활용한 Credential 분리 및 Gitignore 설정을 통한 보안 노출 방지
  • PyInstaller와 Inno Setup을 결합하여 Python 스크립트를 독립 실행형 EXE 및 설치 패키지로 배포

1. 네트워크 의존성이 높은 작업은 OS 종료 프로세스보다 부팅 후 상태 확인(State Recovery) 방식으로 설계할 것

2. 외부 API Key 등 민감 정보는 소스코드와 완전히 분리하여 환경 변수나 설정 파일로 관리할 것

3. 단순 스크립트 배포 시 사용자 경험을 위해 Installer와 Auto-start 등록 과정을 자동화할 것

원문 읽기