Files
ExperionCrawler/src
windpacer 81e2ea145a fix: realtime supervisor — OPC 장기단절 후 자동복구 (OCE 오인중지 + 연결 타임아웃)
- SuperviseAsync: catch(OperationCanceledException){break} 가 OPC SDK 연결 타임아웃
  (TaskCanceledException=OCE 하위)을 '우리 취소'로 오인해 '중지됨'으로 영구정지되던
  버그 수정 → when(ct.IsCancellationRequested) 가드, 그 외 OCE는 일반 오류처럼 재시도
- CreateSessionAsync: CancellationToken.None → 실제 토큰 전달
  (죽은 서버 상대 세션생성이 SDK 기본 OperationTimeout ~2분 블로킹하던 원인 제거)
- 1회 연결 시도 10초 타임아웃(연결토큰 + WaitAsync 하드 백스톱)
- 재시도 주기 30s → 10s (리던던트 서버 전환 시 수분 단절도 빠르게 재포착)
- 라이브 검증: Experion kill→2.5분→revive 시 재연결 순환 유지 후 수동개입 0 자동 구독복구

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-25 17:31:23 +09:00
..