측정 모델
Sentinel은 데이터 수집과 표시를 분리합니다.
- 데몬은 하드웨어와 Linux 카운터를 읽습니다.
- 일정 기간마다 임시 파일을 사용하여
/run/simaai-sentinel/cache.json을 기록합니다. 파일을 생성한 후 원자적 방식으로 이름을 변경합니다. - 터미널 UI와 보고 명령은 해당 캐시를 읽습니다. 샘플링은 수행하지 않습니다. 하드웨어를 직접 변경합니다.
이러한 차이는 중요합니다. UI의 --interval을 변경하면 캐시가 표시되는 빈도가 변경될 뿐입니다. 하드웨어 샘플링 간격은 변경되지 않습니다.
기본 데이터 수집 주기
| 데이터 | 기본 주기 | 참고 사항 |
|---|---|---|
| PMBus 전원 | 100밀리초 | 별도의 스레드에 모아서 관리합니다. 최신 값, 평균값, 최대값, 레일 카운터, 오류 상태는 다음 캐시 업데이트 시에 게시됩니다. |
| 열 감지 센서 | 별도의 냉각 회로 | 루프는 각 데이터 수집 단계가 끝난 후 2초 동안 대기합니다. 모든 RTSN 채널을 읽는 데에 도 시간이 걸리므로, 실제 전체 데이터 수집 간격은 2초보다 더 길어집니다. |
| CPU, 메모리, MLA 메모리, 디스크, 네트워크 | 2초 | 데몬을 사용합니다. --interval최소 허용 값은 0.5초입니다. |
| 프로세스 | 최소 5초 | 5초 제한은 정상적인 데몬 루프가 시스템 지표를 샘플링할 때만 확인됩니다. 기본값인 2초 데몬 간격으로 프로세스 데이터는 일반적으로 약 6초마다 새로 고쳐집니다. 5초보다 긴 데몬 간격이 유효한 최소값이 됩니다. |
| 터미널 UI | 0.5초 | 캐시를 새로 고치기만 하면 되며, 데이터 수집은 실행되지 않습니다. |
기본적으로 데몬은 240개의 캐시 샘플을 유지합니다. 기본값인 2초 캐시 간격에서 차트에는 약 8분 분량의 기록이 포함됩니다. daemon --history N은 유지되는 캐시 샘플의 수를 변경합니다.
헤더 필드
- LIVE는 가장 최신의 캐시 샘플이 15초 미만으로 생성되었음을 의미합니다.
- STALE은 가장 최신 샘플이 최소 15초 이상 오래되었거나 누락되었음을 의미합니다.
- age는 가장 최근 샘플의 타임스탬프 이후 경과한 시간입니다.
- 샘플은 캐시 기록 항목의 개수를 나타내며, PMBus의 개수를 나타내는 것은 아닙니다. 열 또는 프로세스 샘플을 사용합니다.
활성 캐시에는 여전히 누락되었거나 손상된 하위 시스템이 포함될 수 있습니다. 하위 시스템 패널과 내보낸 상태 필드를 사용하여 캐시의 최신 상태와 센서 상태를 구별합니다.
값 및 차트
- 제목 또는 표의 값은
latest.values에서 가져옵니다. - 해당 지표를 기준으로 보존된
samples데이터의 이력을 바탕으로 차트가 생성됩니다. - 수집된 비유한 값은
null로 직렬화됩니다. 이는 상황에 따라 달라집니다. 수집기에서 사용할 수 없는 지표는 샘플에서 완전히 제외될 수 있습니다. 예를 들어, 유효한 첫 번째 값을 읽을 때까지 전원 관련 키가 존재하지 않고, 사용할 수 없거나 비활성화된 RTSN 채널은 제외됩니다. 보기 및 내보내기 소비자는 키가 없는 경우와null값이 있는 경우를 모두 처리해야 합니다. UI는 이러한 경우를-,unknown또는 빈 차트로 표시하며, 이는 보기 유형에 따라 달라집니다. - 동적 차트 스케일은 프레젠테이션 자료로 활용됩니다. 차트가 최상단에 도달하면 그 자체만으로는 하드웨어 한계에 도달했다는 의미는 아닙니다.
- 추세를 나타내는 작은 그래프는 값을 고정된 0~100 범위로 정규화하여 표시합니다. 방향과 상대적인 움직임을 보여주며, 별도의 측정값은 아닙니다.