Jetronome Server
Jetronome Server는 운용 중인 Application의 상태를 한 곳에서 확인할 수 있는 가장 간단한 방법입니다.
License: MIT License
Features
- 주기적 실행 여부 확인
- IP를 기준으로 한 App 목록 그룹화
- 신호 누락 시 알림
- 테스트 API 접속 실패 시 알림
Install
- 서버로 사용할 Node.js 프로젝트에서 다음 명령을 실행합니다.
npm i --save jetronome-server
Usage
초기화
require('jetronome-server')({
alertFn: (name, msg) => { // 알림 발생 시 실행될 함수.
console.error(name);
console.error(msg);
},
port: 7828, // (Optional) 서버로 사용할 포트. 기본값은 7828.
});
- 서버로 사용할 Node.js 프로젝트의 적당한 위치에 위 코드를 입력합니다. 일반적으로는 초기화 직후에 사용합니다.
- 2: 알림(경고)가 발생한 경우 실행되는 함수입니다. 예제는 콘솔에 오류를 찍지만, SMS를 보내거나 다른 관제 시스템으로 신호를 보내도록 변경할 수 있습니다.
- 6: 기본값은 7828 포트를 이용합니다. 원하면 다른 포트로 변경할 수 있습니다.
목록 조회
목록은 두 가지 형태로 조회할 수 있습니다.
아래 예제 URL은 기본 포트인 7828 포트를 이용하는 경우입니다.
1. HTML 페이지로 조회: /list (http://localhost:7828/list)
목록을 열면 신호로 관리되고 있는 App의 목록을 확인할 수 있습니다.
일정한 시간마다 화면이 갱신되며, 신호가 중단되거나 테스트 API에 접속 실패한 경우 붉은색으로 표시됩니다.
- IP 표시줄
실행 중인 PC의 IP가 표시됩니다. [#] 부분을 클릭하면 별칭을 설정할 수 있습니다.
별칭이 설정된 경우 IP 뒤에 별칭이 표시됩니다. - App 목록
실행 중인 App의 정보가 표시됩니다.
더 이상 신호 확인이 필요하지 않은 경우 [x] 부분을 클릭하여 모니터링을 중단할 수 있습니다.
App의 이름 아래에는 'CPU 사용율', '메모리 사용율', '디스크 사용률'이 순서대로 표시되며, 우측엔 마지막 신호가 수신된 시간이 표시됩니다.
2. JSON 형태로 조회: /list?type=json (http://localhost:7828/list?type=json)
호출된 순간의 목록을 JSON 형태로 반환합니다.
각 객체의 속성이 뜻하는 바는 아래와 같습니다.
- id: App을 서버에서 관리할 때 사용하는 ID
- name: App 이름
- ip: App이 실행 중인 PC의 IP
- description: App 설명
- lastChecked: 마지막으로 신호가 수신된 시각 (ISO String)
- isOk: 정상 여부
- stat: 해당 서버의 상태
- cpu: CPU 사용률
- memory: 메모리 사용률
- disk: 디스크 사용률
Feedback
Github Repository
https://github.com/jetronome/jetronome-server