admin
1.0.0
Drop-In Node.js 관리자 엔드 포인트는 생산 문제를 분석하는 데 도움이됩니다.
라이브 데모 | 사용법 | FAQ | 플러그인 | 예제 프로젝트 | changelog
생산에서 앱을 실행하는 것은 어려울 수 있습니다. 응용 프로그램이 충돌하거나 버그가 발생하거나 느리게 될 수 있습니다. 그러한 문제에 접근하는 다양한 방법이 있습니다. 관리자는 응용 프로그램 문제를 해결하는 데 도움이되는 도구입니다. Node.js 앱 실행에 대한 자세한 디버깅 정보를 제공하도록 설계되었습니다.
admin은 HTTP 서버를 통해 디버깅 엔드 포인트를 제공합니다. 이 서버가 제공하는 기능은 관리자가 플러그인 시스템이므로 확장 가능합니다.
이것을 오랫동안 설명하는 대신 Heroku의 라이브 데모 시스템을 확인하십시오!
admin을 사용하려면 admin node.js 패키지와 하나 이상의 플러그인을 설치해야합니다. 다음 예제는 일반적인 설정을 보여줍니다.
npm install --save admin
admin-plugin-config
admin-plugin-healthcheck
admin-plugin-environment
admin-plugin-index
admin-plugin-profile
admin-plugin-report
admin-plugin-terminate
관리자를 사용하려면 응용 프로그램으로 구성하고 시작해야합니다. Folowing Code 목록은이 작업을 수행 할 수있는 방법을 보여줍니다.
const admin = require ( 'admin' ) ;
admin . configure ( {
http : { // optional
bindAddress : '127.0.0.1' , // default
port : 2999 // default
} ,
plugins : [
require ( 'admin-plugin-index' ) ( ) ,
require ( 'admin-plugin-report' ) ( ) ,
require ( 'admin-plugin-environment' ) ( ) ,
require ( 'admin-plugin-profile' ) ( ) ,
require ( 'admin-plugin-terminate' ) ( ) ,
require ( 'admin-plugin-config' ) ( {
config : {
// An application config goes here. This config object will be
// visible in the admin UI and via the admin REST endpoints.
secret : '42' ,
port : 8080
}
} ) ,
require ( 'admin-plugin-healthcheck' ) ( {
checks : {
// Define multiple healthchecks which check critical components
// in the system. The following example shows valid return values.
random ( ) {
const v = Math . random ( ) ;
if ( v > 0.8 ) {
throw new Error ( 'Random value >0.8' ) ;
} else if ( v > 0.3 ) {
return "Healthy like an application that isn't used." ;
} else {
return Promise . reject ( 'Something bad happened here…' ) ;
}
}
}
} )
]
} ) ;
admin . start ( ) ;
가장 쉬운 솔루션은 시스템에 SSH 터널을 설정하는 것입니다.
SSH_KEY="~/.ssh/<my_key>"
REMOTE_USER="<user>"
REMOTE_HOST="<host>"
ADMIN_PORT="<port>"
ssh -i "$SSH_KEY" -Nf -L "$ADMIN_PORT:localhost:$ADMIN_PORT" "$REMOTE_USER@$REMOTE_HOST"
curl "localhost:$ADMIN_PORT"