scouter-project / scouter

Scouter is an open source APM (Application Performance Management) tool.
Other
2.1k stars 566 forks source link

Scouter Collector의 서버 시간대와 클라이언트 PC의 시간대가 다를 경우 XLog 과거 데이터 조회에 오류가 발생합니다. #847

Open Sooya0441 opened 2 years ago

Sooya0441 commented 2 years ago

안녕하세요. 현재 Scouter 2.15.0 버전으로 서비스를 모니터링 중입니다.

Scouter Collector Linux Server의 시간대는 UTC로 설정되어 있습니다. 그런데 제 PC의 시간대가 Asia/Seoul로 되어 있으므로 인해 오전 0 ~ 9시 사이의 Xlog 데이터를 가져오지 못하는 현상을 보입니다.

아마 UTC와 Asia/Seoul 시간대 사이의 9시간의 차이로 인해 날짜 변경 부분에서 문제가 발생하는 것으로 생각됩니다. 0~9시 사이의 XLog는 ./dababase 폴더에서 전일 폴더의 xlog 폴더에서 데이터를 가져와야 하는데 당일자의 폴더 데이터에서 조회를 하면서 데이터 없음 현상이 발생한 것으로 보입니다.

혹시 이 부분은 초기 서버로 조회 조건이 전달될 때 UTC Time 또는 Collector 서버의 시간대로 변경되어 전달되도록 할 수는 없나요?

현재 Client 접속을 미주 및 유럽 지역에서 가능한 경우라 Client의 시간대 설정을 변경하는 걸로는 해결이 어려울 것으로 보입니다.

yangmyunggil commented 2 years ago

전 그래서 클라이언트에서 데이터 불러 올떄 수집서버 시간으로 윈도우시간 변경해서 가지고 오네요. 임시방편이긴하지만요

gunlee01 commented 2 years ago

당장 개선하기는 어려운 부분입니다. 저는 보통 해외에 서버가 있어도 클라이언트가 위치한 시간대(Asia/Seoul) 기준으로 scouter collector server 기동시 jvm option으로 시간대를 맞춰서 사용합니다.

-Duser.timezone=Asia/Seoul

여러 지역에서 클라이언트를 사용해야해서 그게 불가능하다면 클라이언트가 서버 시간대에 맞춰서 (UTC로) 볼 수 밖에 없을 것 같습니다.