1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 | var debug = require('debug')('pm2:conf');
|
8 | var p = require('path');
|
9 | var util = require('util');
|
10 | var chalk = require('chalk');
|
11 |
|
12 |
|
13 |
|
14 |
|
15 | var path_structure = require('./paths.js')(process.env.OVER_HOME);
|
16 |
|
17 |
|
18 |
|
19 |
|
20 | var csts = {
|
21 | PREFIX_MSG : chalk.green('[PM2] '),
|
22 | PREFIX_MSG_ERR : chalk.red('[PM2][ERROR] '),
|
23 | PREFIX_MSG_MOD : chalk.bold.green('[PM2][Module] '),
|
24 | PREFIX_MSG_MOD_ERR : chalk.red('[PM2][Module][ERROR] '),
|
25 | PREFIX_MSG_WARNING : chalk.yellow('[PM2][WARN] '),
|
26 | PREFIX_MSG_SUCCESS : chalk.cyan('[PM2] '),
|
27 |
|
28 | TEMPLATE_FOLDER : p.join(__dirname, 'lib/templates'),
|
29 |
|
30 | APP_CONF_DEFAULT_FILE : 'ecosystem.config.js',
|
31 | APP_CONF_TPL : 'ecosystem.tpl',
|
32 | APP_CONF_TPL_SIMPLE : 'ecosystem-simple.tpl',
|
33 | SAMPLE_CONF_FILE : 'sample-conf.js',
|
34 | LOGROTATE_SCRIPT : 'logrotate.d/pm2',
|
35 |
|
36 | DOCKERFILE_NODEJS : 'Dockerfiles/Dockerfile-nodejs.tpl',
|
37 | DOCKERFILE_JAVA : 'Dockerfiles/Dockerfile-java.tpl',
|
38 | DOCKERFILE_RUBY : 'Dockerfiles/Dockerfile-ruby.tpl',
|
39 |
|
40 | SUCCESS_EXIT : 0,
|
41 | ERROR_EXIT : 1,
|
42 | CODE_UNCAUGHTEXCEPTION : 1,
|
43 |
|
44 | IS_WINDOWS : (process.platform === 'win32' || process.platform === 'win64'),
|
45 | ONLINE_STATUS : 'online',
|
46 | STOPPED_STATUS : 'stopped',
|
47 | STOPPING_STATUS : 'stopping',
|
48 | LAUNCHING_STATUS : 'launching',
|
49 | ERRORED_STATUS : 'errored',
|
50 | ONE_LAUNCH_STATUS : 'one-launch-status',
|
51 |
|
52 | CLUSTER_MODE_ID : 'cluster_mode',
|
53 | FORK_MODE_ID : 'fork_mode',
|
54 |
|
55 | LOW_MEMORY_ENVIRONMENT : process.env.PM2_OPTIMIZE_MEMORY || false,
|
56 |
|
57 | MACHINE_NAME : process.env.INSTANCE_NAME || process.env.MACHINE_NAME,
|
58 | SECRET_KEY : process.env.KEYMETRICS_SECRET || process.env.PM2_SECRET_KEY || process.env.SECRET_KEY,
|
59 | PUBLIC_KEY : process.env.KEYMETRICS_PUBLIC || process.env.PM2_PUBLIC_KEY || process.env.PUBLIC_KEY,
|
60 | KEYMETRICS_ROOT_URL : process.env.KEYMETRICS_NODE || process.env.ROOT_URL || process.env.INFO_NODE || 'root.keymetrics.io',
|
61 |
|
62 |
|
63 | KEYMETRICS_BANNER : '../lib/motd',
|
64 | KEYMETRICS_UPDATE : '../lib/motd.update',
|
65 | DEFAULT_MODULE_JSON : 'package.json',
|
66 |
|
67 | REMOTE_PORT_TCP : isNaN(parseInt(process.env.KEYMETRICS_PUSH_PORT)) ? 80 : parseInt(process.env.KEYMETRICS_PUSH_PORT),
|
68 | REMOTE_PORT : 41624,
|
69 | REMOTE_HOST : 's1.keymetrics.io',
|
70 | SEND_INTERVAL : 1000,
|
71 | RELOAD_LOCK_TIMEOUT : parseInt(process.env.PM2_RELOAD_LOCK_TIMEOUT) || 30000,
|
72 | GRACEFUL_TIMEOUT : parseInt(process.env.PM2_GRACEFUL_TIMEOUT) || 8000,
|
73 | GRACEFUL_LISTEN_TIMEOUT : parseInt(process.env.PM2_GRACEFUL_LISTEN_TIMEOUT) || 3000,
|
74 | LOGS_BUFFER_SIZE : 8,
|
75 | CONTEXT_ON_ERROR : 2,
|
76 | AGGREGATION_DURATION : process.env.PM2_DEBUG || process.env.NODE_ENV === 'local_test' || process.env.NODE_ENV === 'development' ? 3000 : 5 * 60000,
|
77 | TRACE_FLUSH_INTERVAL : process.env.PM2_DEBUG || process.env.NODE_ENV === 'local_test' ? 1000 : 60000,
|
78 |
|
79 |
|
80 | CONCURRENT_ACTIONS : (function() {
|
81 | var concurrent_actions = parseInt(process.env.PM2_CONCURRENT_ACTIONS) || 2;
|
82 | debug('Using %d parallelism (CONCURRENT_ACTIONS)', concurrent_actions);
|
83 | return concurrent_actions;
|
84 | })(),
|
85 |
|
86 | DEBUG : process.env.PM2_DEBUG || false,
|
87 | WEB_IPADDR : process.env.PM2_API_IPADDR || '0.0.0.0',
|
88 | WEB_PORT : parseInt(process.env.PM2_API_PORT) || 9615,
|
89 | WEB_STRIP_ENV_VARS : process.env.PM2_WEB_STRIP_ENV_VARS || false,
|
90 | MODIFY_REQUIRE : process.env.PM2_MODIFY_REQUIRE || false,
|
91 |
|
92 | WORKER_INTERVAL : process.env.PM2_WORKER_INTERVAL || 30000,
|
93 | KILL_TIMEOUT : process.env.PM2_KILL_TIMEOUT || 1600,
|
94 | PM2_PROGRAMMATIC : typeof(process.env.pm_id) !== 'undefined' || process.env.PM2_PROGRAMMATIC,
|
95 | PM2_LOG_DATE_FORMAT : process.env.PM2_LOG_DATE_FORMAT !== undefined ? process.env.PM2_LOG_DATE_FORMAT : 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]'
|
96 |
|
97 | };
|
98 |
|
99 | module.exports = util._extend(csts, path_structure);
|