123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 |
- /**
- * Copyright 2013-2022 the PM2 project authors. All rights reserved.
- * Use of this source code is governed by a license that
- * can be found in the LICENSE file.
- */
- var debug = require('debug')('pm2:conf');
- var p = require('path');
- var util = require('util');
- var chalk = require('chalk');
- /**
- * Get PM2 path structure
- */
- var path_structure = require('./paths.js')(process.env.OVER_HOME);
- /**
- * Constants variables used by PM2
- */
- var csts = {
- PREFIX_MSG : chalk.green('[PM2] '),
- PREFIX_MSG_INFO : chalk.cyan('[PM2][INFO] '),
- PREFIX_MSG_ERR : chalk.red('[PM2][ERROR] '),
- PREFIX_MSG_MOD : chalk.bold.green('[PM2][Module] '),
- PREFIX_MSG_MOD_ERR : chalk.red('[PM2][Module][ERROR] '),
- PREFIX_MSG_WARNING : chalk.yellow('[PM2][WARN] '),
- PREFIX_MSG_SUCCESS : chalk.cyan('[PM2] '),
- PM2_IO_MSG : chalk.cyan('[PM2 I/O]'),
- PM2_IO_MSG_ERR : chalk.red('[PM2 I/O]'),
- TEMPLATE_FOLDER : p.join(__dirname, 'lib/templates'),
- APP_CONF_DEFAULT_FILE : 'ecosystem.config.js',
- APP_CONF_TPL : 'ecosystem.tpl',
- APP_CONF_TPL_SIMPLE : 'ecosystem-simple.tpl',
- SAMPLE_CONF_FILE : 'sample-conf.js',
- LOGROTATE_SCRIPT : 'logrotate.d/pm2',
- DOCKERFILE_NODEJS : 'Dockerfiles/Dockerfile-nodejs.tpl',
- DOCKERFILE_JAVA : 'Dockerfiles/Dockerfile-java.tpl',
- DOCKERFILE_RUBY : 'Dockerfiles/Dockerfile-ruby.tpl',
- SUCCESS_EXIT : 0,
- ERROR_EXIT : 1,
- CODE_UNCAUGHTEXCEPTION : 1,
- IS_WINDOWS : (process.platform === 'win32' || process.platform === 'win64' || /^(msys|cygwin)$/.test(process.env.OSTYPE)),
- ONLINE_STATUS : 'online',
- STOPPED_STATUS : 'stopped',
- STOPPING_STATUS : 'stopping',
- WAITING_RESTART : 'waiting restart',
- LAUNCHING_STATUS : 'launching',
- ERRORED_STATUS : 'errored',
- ONE_LAUNCH_STATUS : 'one-launch-status',
- CLUSTER_MODE_ID : 'cluster_mode',
- FORK_MODE_ID : 'fork_mode',
- LOW_MEMORY_ENVIRONMENT : process.env.PM2_OPTIMIZE_MEMORY || false,
- MACHINE_NAME : process.env.INSTANCE_NAME || process.env.MACHINE_NAME || process.env.PM2_MACHINE_NAME,
- SECRET_KEY : process.env.KEYMETRICS_SECRET || process.env.PM2_SECRET_KEY || process.env.SECRET_KEY,
- PUBLIC_KEY : process.env.KEYMETRICS_PUBLIC || process.env.PM2_PUBLIC_KEY || process.env.PUBLIC_KEY,
- KEYMETRICS_ROOT_URL : process.env.KEYMETRICS_NODE || process.env.PM2_APM_ADDRESS || process.env.ROOT_URL || process.env.INFO_NODE || 'root.keymetrics.io',
- PM2_BANNER : '../lib/motd',
- PM2_UPDATE : '../lib/API/pm2-plus/pres/motd.update',
- DEFAULT_MODULE_JSON : 'package.json',
- MODULE_BASEFOLDER: 'module',
- MODULE_CONF_PREFIX: 'module-db-v2',
- MODULE_CONF_PREFIX_TAR: 'tar-modules',
- EXP_BACKOFF_RESET_TIMER : parseInt(process.env.EXP_BACKOFF_RESET_TIMER) || 30000,
- REMOTE_PORT_TCP : isNaN(parseInt(process.env.KEYMETRICS_PUSH_PORT)) ? 80 : parseInt(process.env.KEYMETRICS_PUSH_PORT),
- REMOTE_PORT : 41624,
- REMOTE_HOST : 's1.keymetrics.io',
- SEND_INTERVAL : 1000,
- RELOAD_LOCK_TIMEOUT : parseInt(process.env.PM2_RELOAD_LOCK_TIMEOUT) || 30000,
- GRACEFUL_TIMEOUT : parseInt(process.env.PM2_GRACEFUL_TIMEOUT) || 8000,
- GRACEFUL_LISTEN_TIMEOUT : parseInt(process.env.PM2_GRACEFUL_LISTEN_TIMEOUT) || 3000,
- LOGS_BUFFER_SIZE : 8,
- CONTEXT_ON_ERROR : 2,
- AGGREGATION_DURATION : process.env.PM2_DEBUG || process.env.NODE_ENV === 'local_test' || process.env.NODE_ENV === 'development' ? 3000 : 5 * 60000,
- TRACE_FLUSH_INTERVAL : process.env.PM2_DEBUG || process.env.NODE_ENV === 'local_test' ? 1000 : 60000,
- // Concurrent actions when doing start/restart/reload
- CONCURRENT_ACTIONS : (function() {
- var concurrent_actions = parseInt(process.env.PM2_CONCURRENT_ACTIONS) || 2;
- debug('Using %d parallelism (CONCURRENT_ACTIONS)', concurrent_actions);
- return concurrent_actions;
- })(),
- DEBUG : process.env.PM2_DEBUG || false,
- WEB_IPADDR : process.env.PM2_API_IPADDR || '0.0.0.0',
- WEB_PORT : parseInt(process.env.PM2_API_PORT) || 9615,
- WEB_STRIP_ENV_VARS : process.env.PM2_WEB_STRIP_ENV_VARS || false,
- MODIFY_REQUIRE : process.env.PM2_MODIFY_REQUIRE || false,
- WORKER_INTERVAL : process.env.PM2_WORKER_INTERVAL || 30000,
- KILL_TIMEOUT : process.env.PM2_KILL_TIMEOUT || 1600,
- KILL_SIGNAL : process.env.PM2_KILL_SIGNAL || 'SIGINT',
- KILL_USE_MESSAGE : process.env.PM2_KILL_USE_MESSAGE || false,
- PM2_PROGRAMMATIC : typeof(process.env.pm_id) !== 'undefined' || process.env.PM2_PROGRAMMATIC,
- PM2_LOG_DATE_FORMAT : process.env.PM2_LOG_DATE_FORMAT !== undefined ? process.env.PM2_LOG_DATE_FORMAT : 'YYYY-MM-DDTHH:mm:ss'
- };
- module.exports = Object.assign(csts, path_structure);
|