feat: 초기 프로젝트 설정 및 룰.md 파일 추가
This commit is contained in:
20
api.hyungi.net/node_modules/@pm2/io/build/main/services/actions.d.ts
generated
vendored
Normal file
20
api.hyungi.net/node_modules/@pm2/io/build/main/services/actions.d.ts
generated
vendored
Normal file
@@ -0,0 +1,20 @@
|
||||
export declare class Action {
|
||||
handler: Function;
|
||||
name: string;
|
||||
type: string;
|
||||
isScoped: boolean;
|
||||
callback?: Function;
|
||||
arity: number;
|
||||
opts: Object | null | undefined;
|
||||
}
|
||||
export declare class ActionService {
|
||||
private timer;
|
||||
private transport;
|
||||
private actions;
|
||||
private logger;
|
||||
private listener;
|
||||
init(): void;
|
||||
destroy(): void;
|
||||
registerAction(actionName?: string, opts?: Object | undefined | Function, handler?: Function): void;
|
||||
scopedAction(actionName?: string, handler?: Function): any;
|
||||
}
|
||||
147
api.hyungi.net/node_modules/@pm2/io/build/main/services/actions.js
generated
vendored
Normal file
147
api.hyungi.net/node_modules/@pm2/io/build/main/services/actions.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
9
api.hyungi.net/node_modules/@pm2/io/build/main/services/inspector.d.ts
generated
vendored
Normal file
9
api.hyungi.net/node_modules/@pm2/io/build/main/services/inspector.d.ts
generated
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
/// <reference types="node" />
|
||||
import * as inspector from 'inspector';
|
||||
export declare class InspectorService {
|
||||
private session;
|
||||
private logger;
|
||||
init(): inspector.Session;
|
||||
getSession(): inspector.Session;
|
||||
destroy(): void;
|
||||
}
|
||||
43
api.hyungi.net/node_modules/@pm2/io/build/main/services/inspector.js
generated
vendored
Normal file
43
api.hyungi.net/node_modules/@pm2/io/build/main/services/inspector.js
generated
vendored
Normal file
@@ -0,0 +1,43 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.InspectorService = void 0;
|
||||
const inspector = require("inspector");
|
||||
const debug_1 = require("debug");
|
||||
class InspectorService {
|
||||
constructor() {
|
||||
this.session = null;
|
||||
this.logger = (0, debug_1.default)('axm:services:inspector');
|
||||
}
|
||||
init() {
|
||||
this.logger(`Creating new inspector session`);
|
||||
this.session = new inspector.Session();
|
||||
this.session.connect();
|
||||
this.logger('Connected to inspector');
|
||||
this.session.post('Profiler.enable');
|
||||
this.session.post('HeapProfiler.enable');
|
||||
return this.session;
|
||||
}
|
||||
getSession() {
|
||||
if (this.session === null) {
|
||||
this.session = this.init();
|
||||
return this.session;
|
||||
}
|
||||
else {
|
||||
return this.session;
|
||||
}
|
||||
}
|
||||
destroy() {
|
||||
if (this.session !== null) {
|
||||
this.session.post('Profiler.disable');
|
||||
this.session.post('HeapProfiler.disable');
|
||||
this.session.disconnect();
|
||||
this.session = null;
|
||||
}
|
||||
else {
|
||||
this.logger('No open session');
|
||||
}
|
||||
}
|
||||
}
|
||||
exports.InspectorService = InspectorService;
|
||||
module.exports = InspectorService;
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zcGVjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL2luc3BlY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx1Q0FBc0M7QUFDdEMsaUNBQXlCO0FBRXpCLE1BQWEsZ0JBQWdCO0lBQTdCO1FBRVUsWUFBTyxHQUE2QixJQUFJLENBQUE7UUFDeEMsV0FBTSxHQUFhLElBQUEsZUFBSyxFQUFDLHdCQUF3QixDQUFDLENBQUE7SUErQjVELENBQUM7SUE3QkMsSUFBSTtRQUNGLElBQUksQ0FBQyxNQUFNLENBQUMsZ0NBQWdDLENBQUMsQ0FBQTtRQUM3QyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFBO1FBQ3RDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUE7UUFDdEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFBO1FBQ3JDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUE7UUFDcEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQTtRQUN4QyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUE7SUFDckIsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLElBQUksQ0FBQyxPQUFPLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDMUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUE7WUFDMUIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFBO1FBQ3JCLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFBO1FBQ3JCLENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFBO1lBQ3JDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUE7WUFDekMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQTtZQUN6QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQTtRQUNyQixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtRQUNoQyxDQUFDO0lBQ0gsQ0FBQztDQUNGO0FBbENELDRDQWtDQztBQUVELE1BQU0sQ0FBQyxPQUFPLEdBQUcsZ0JBQWdCLENBQUEifQ==
|
||||
63
api.hyungi.net/node_modules/@pm2/io/build/main/services/metrics.d.ts
generated
vendored
Normal file
63
api.hyungi.net/node_modules/@pm2/io/build/main/services/metrics.d.ts
generated
vendored
Normal file
@@ -0,0 +1,63 @@
|
||||
import Meter from '../utils/metrics/meter';
|
||||
import Counter from '../utils/metrics/counter';
|
||||
import Histogram from '../utils/metrics/histogram';
|
||||
import { Service } from '../serviceManager';
|
||||
import Gauge from '../utils/metrics/gauge';
|
||||
export declare enum MetricType {
|
||||
'meter' = "meter",
|
||||
'histogram' = "histogram",
|
||||
'counter' = "counter",
|
||||
'gauge' = "gauge",
|
||||
'metric' = "metric"
|
||||
}
|
||||
export declare enum MetricMeasurements {
|
||||
'min' = "min",
|
||||
'max' = "max",
|
||||
'sum' = "sum",
|
||||
'count' = "count",
|
||||
'variance' = "variance",
|
||||
'mean' = "mean",
|
||||
'stddev' = "stddev",
|
||||
'median' = "median",
|
||||
'p75' = "p75",
|
||||
'p95' = "p95",
|
||||
'p99' = "p99",
|
||||
'p999' = "p999"
|
||||
}
|
||||
export interface InternalMetric {
|
||||
name?: string;
|
||||
type?: MetricType;
|
||||
id?: string;
|
||||
historic?: boolean;
|
||||
unit?: string;
|
||||
handler: Function;
|
||||
implementation: any;
|
||||
value?: number;
|
||||
}
|
||||
export declare class Metric {
|
||||
name?: string;
|
||||
id?: string;
|
||||
historic?: boolean;
|
||||
unit?: string;
|
||||
value?: () => number;
|
||||
}
|
||||
export declare class MetricBulk extends Metric {
|
||||
type: MetricType;
|
||||
}
|
||||
export declare class HistogramOptions extends Metric {
|
||||
measurement: MetricMeasurements;
|
||||
}
|
||||
export declare class MetricService implements Service {
|
||||
private metrics;
|
||||
private timer;
|
||||
private transport;
|
||||
private logger;
|
||||
init(): void;
|
||||
registerMetric(metric: InternalMetric): void;
|
||||
meter(opts: Metric): Meter;
|
||||
counter(opts: Metric): Counter;
|
||||
histogram(opts: HistogramOptions): Histogram;
|
||||
metric(opts: Metric): Gauge;
|
||||
deleteMetric(name: string): boolean;
|
||||
destroy(): void;
|
||||
}
|
||||
187
api.hyungi.net/node_modules/@pm2/io/build/main/services/metrics.js
generated
vendored
Normal file
187
api.hyungi.net/node_modules/@pm2/io/build/main/services/metrics.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
10
api.hyungi.net/node_modules/@pm2/io/build/main/services/runtimeStats.d.ts
generated
vendored
Normal file
10
api.hyungi.net/node_modules/@pm2/io/build/main/services/runtimeStats.d.ts
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
import { EventEmitter2 } from 'eventemitter2';
|
||||
export declare class RuntimeStatsService extends EventEmitter2 {
|
||||
private logger;
|
||||
private handle;
|
||||
private noduleInstance;
|
||||
private enabled;
|
||||
init(): any;
|
||||
isEnabled(): boolean;
|
||||
destroy(): void;
|
||||
}
|
||||
50
api.hyungi.net/node_modules/@pm2/io/build/main/services/runtimeStats.js
generated
vendored
Normal file
50
api.hyungi.net/node_modules/@pm2/io/build/main/services/runtimeStats.js
generated
vendored
Normal file
@@ -0,0 +1,50 @@
|
||||
'use strict';
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.RuntimeStatsService = void 0;
|
||||
const debug_1 = require("debug");
|
||||
const module_1 = require("../utils/module");
|
||||
const eventemitter2_1 = require("eventemitter2");
|
||||
class RuntimeStatsService extends eventemitter2_1.EventEmitter2 {
|
||||
constructor() {
|
||||
super(...arguments);
|
||||
this.logger = (0, debug_1.default)('axm:services:runtimeStats');
|
||||
this.enabled = false;
|
||||
}
|
||||
init() {
|
||||
this.logger('init');
|
||||
if (process.env.PM2_APM_DISABLE_RUNTIME_STATS === 'true') {
|
||||
return this.logger('disabling service because of the environment flag');
|
||||
}
|
||||
const modulePath = module_1.default.detectModule('@pm2/node-runtime-stats');
|
||||
if (typeof modulePath !== 'string')
|
||||
return;
|
||||
const RuntimeStats = module_1.default.loadModule(modulePath);
|
||||
if (RuntimeStats instanceof Error) {
|
||||
return this.logger(`Failed to require module @pm2/node-runtime-stats: ${RuntimeStats.message}`);
|
||||
}
|
||||
this.noduleInstance = new RuntimeStats({
|
||||
delay: 1000
|
||||
});
|
||||
this.logger('starting runtime stats');
|
||||
this.noduleInstance.start();
|
||||
this.handle = (data) => {
|
||||
this.logger('received runtime stats', data);
|
||||
this.emit('data', data);
|
||||
};
|
||||
this.noduleInstance.on('sense', this.handle);
|
||||
this.enabled = true;
|
||||
}
|
||||
isEnabled() {
|
||||
return this.enabled;
|
||||
}
|
||||
destroy() {
|
||||
if (this.noduleInstance !== undefined && this.noduleInstance !== null) {
|
||||
this.logger('removing listener on runtime stats service');
|
||||
this.noduleInstance.removeListener('sense', this.handle);
|
||||
this.noduleInstance.stop();
|
||||
}
|
||||
this.logger('destroy');
|
||||
}
|
||||
}
|
||||
exports.RuntimeStatsService = RuntimeStatsService;
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVudGltZVN0YXRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL3J1bnRpbWVTdGF0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxZQUFZLENBQUE7OztBQUVaLGlDQUF5QjtBQUN6Qiw0Q0FBbUM7QUFDbkMsaURBQTZDO0FBRTdDLE1BQWEsbUJBQW9CLFNBQVEsNkJBQWE7SUFBdEQ7O1FBRVUsV0FBTSxHQUFRLElBQUEsZUFBSyxFQUFDLDJCQUEyQixDQUFDLENBQUE7UUFHaEQsWUFBTyxHQUFZLEtBQUssQ0FBQTtJQTZDbEMsQ0FBQztJQTNDQyxJQUFJO1FBQ0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUNuQixJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsNkJBQTZCLEtBQUssTUFBTSxFQUFFLENBQUM7WUFDekQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLG1EQUFtRCxDQUFDLENBQUE7UUFDekUsQ0FBQztRQUVELE1BQU0sVUFBVSxHQUFHLGdCQUFLLENBQUMsWUFBWSxDQUFDLHlCQUF5QixDQUFDLENBQUE7UUFDaEUsSUFBSSxPQUFPLFVBQVUsS0FBSyxRQUFRO1lBQUUsT0FBTTtRQUUxQyxNQUFNLFlBQVksR0FBRyxnQkFBSyxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUNqRCxJQUFJLFlBQVksWUFBWSxLQUFLLEVBQUUsQ0FBQztZQUNsQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMscURBQXFELFlBQVksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFBO1FBQ2pHLENBQUM7UUFDRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksWUFBWSxDQUFDO1lBQ3JDLEtBQUssRUFBRSxJQUFJO1NBQ1osQ0FBQyxDQUFBO1FBQ0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFBO1FBQ3JDLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLENBQUE7UUFDM0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxNQUFNLENBQUMsd0JBQXdCLEVBQUUsSUFBSSxDQUFDLENBQUE7WUFDM0MsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUE7UUFDekIsQ0FBQyxDQUFBO1FBR0QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUM1QyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQTtJQUNyQixDQUFDO0lBS0QsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQTtJQUNyQixDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksSUFBSSxDQUFDLGNBQWMsS0FBSyxTQUFTLElBQUksSUFBSSxDQUFDLGNBQWMsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUN0RSxJQUFJLENBQUMsTUFBTSxDQUFDLDRDQUE0QyxDQUFDLENBQUE7WUFDekQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtZQUN4RCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFBO1FBQzVCLENBQUM7UUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBQ3hCLENBQUM7Q0FDRjtBQWxERCxrREFrREMifQ==
|
||||
22
api.hyungi.net/node_modules/@pm2/io/build/main/services/transport.d.ts
generated
vendored
Normal file
22
api.hyungi.net/node_modules/@pm2/io/build/main/services/transport.d.ts
generated
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
import { Action } from './actions';
|
||||
import { InternalMetric } from './metrics';
|
||||
import { EventEmitter2 } from 'eventemitter2';
|
||||
export declare class TransportConfig {
|
||||
publicKey: string;
|
||||
secretKey: string;
|
||||
appName: string;
|
||||
serverName?: string;
|
||||
sendLogs?: Boolean;
|
||||
logFilter?: string | RegExp;
|
||||
disableLogs?: Boolean;
|
||||
proxy?: string;
|
||||
}
|
||||
export interface Transport extends EventEmitter2 {
|
||||
init: (config: TransportConfig) => Transport;
|
||||
destroy: () => void;
|
||||
send: (channel: string, payload: Object) => void;
|
||||
addAction: (action: Action) => void;
|
||||
setMetrics: (metrics: InternalMetric[]) => void;
|
||||
setOptions: (options: any) => void;
|
||||
}
|
||||
export declare function createTransport(name: string, config: TransportConfig): Transport;
|
||||
14
api.hyungi.net/node_modules/@pm2/io/build/main/services/transport.js
generated
vendored
Normal file
14
api.hyungi.net/node_modules/@pm2/io/build/main/services/transport.js
generated
vendored
Normal file
@@ -0,0 +1,14 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.createTransport = exports.TransportConfig = void 0;
|
||||
const IPCTransport_1 = require("../transports/IPCTransport");
|
||||
class TransportConfig {
|
||||
}
|
||||
exports.TransportConfig = TransportConfig;
|
||||
function createTransport(name, config) {
|
||||
const transport = new IPCTransport_1.IPCTransport();
|
||||
transport.init(config);
|
||||
return transport;
|
||||
}
|
||||
exports.createTransport = createTransport;
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNwb3J0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL3RyYW5zcG9ydC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFHQSw2REFBeUQ7QUFJekQsTUFBYSxlQUFlO0NBMEMzQjtBQTFDRCwwQ0EwQ0M7QUFnQ0QsU0FBZ0IsZUFBZSxDQUFFLElBQVksRUFBRSxNQUF1QjtJQUNwRSxNQUFNLFNBQVMsR0FBRyxJQUFJLDJCQUFZLEVBQUUsQ0FBQTtJQUNwQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQ3RCLE9BQU8sU0FBUyxDQUFBO0FBZWxCLENBQUM7QUFsQkQsMENBa0JDIn0=
|
||||
Reference in New Issue
Block a user