01. 문제 현상
위성과 교신 중 지상국 안테나 구동 로그에 다음과 같은 이상 계단 현상이 발생하였습니다.
02. 원인 분석
- 지상국 소프트웨어는 안테나 구동 로그를 0.1초 주기로 수신하지만, 1초 주기로 10개 중 1개의 로그만 저장하는 정책을 가지고 있었습니다.
- 로그 저장을 위해 1초 주기를 측정할 때, 서버 운영체제의 시간을 참조하고 있었습니다.
- 이로 인해 하나의 로그를 읽어 파일로 저장하는데 1초 이상의 시간이 소요되면, 이어서 통신 버퍼에 저장된 0.1초 이전의 안테나 로그를 1초 경과한 로그로 해석하게 됩니다.
- 위와 같은 로그로 그래프를 그리면 시간은 1초가 흘렀지만 실제로는 0.1초 동안 작게 움직인 각도를 표시하게 됩니다.
- 이와 같은 패턴이 연속적으로 발생하면 아래의 그래프와 같이 계단 현상이 발생하게 됨을 확인하였습니다.
03. 처리 결과
- 실제 안테나 구동에 사용된 안테나 시스템의 시간을 참조하여 1초를 카운팅하도록 코드를 수정하였습니다.
- 안테나 구동 그래프 생성 시, 안테나 시스템의 시간이 X축이 되도록 하였습니다.