ecosystem.config.js

module.exports = {
apps : [{
name : 'TOB_NODE',
script : 'app.js',
// 开发环境变量
env: {
NODE_ENV: 'development'
},
// 测试环境变量
env_testing: {
NODE_ENV: 'testing'
},
// 生产环境变量
env_production : {
NODE_ENV: 'production'
}, // 实例个数
instances: 2,
// 集群模式
exec_mode: 'cluster', // 完整日志路径
output: '/opt/log/tob/node/output.log',
// 错误日志路径
error: '/opt/log/tob/node/error.log',
// 访问日志路径
log: '/opt/log/tob/node/tob-log.log',
// 日志格式
log_type: 'json',
// 合并日志
merge_logs: true,
// 日志日期格式
log_date_format: 'YYYY-MM-DD HH:mm:ss'
}]
};

配置项

name 应用进程名称;

script 启动脚本路径;

cwd 应用启动的路径,关于script与cwd的区别举例说明:在/home/polo/目录下运行/data/release/node/index.js,此处script为/data/release/node/index.js,cwd为/home/polo/;

args 传递给脚本的参数;

interpreter 指定的脚本解释器;

interpreter_args 传递给解释器的参数;

instances 应用启动实例个数,仅在cluster模式有效,默认为fork;

exec_mode 应用启动模式,支持fork和cluster模式;

watch 监听重启,启用情况下,文件夹或子文件夹下变化应用自动重启;

ignore_watch 忽略监听的文件夹,支持正则表达式;

max_memory_restart 最大内存限制数,超出自动重启;

env 环境变量,object类型,如{"NODE_ENV":"production", "ID": "42"};

log_date_format 指定日志日期格式,如YYYY-MM-DD HH:mm:ss;

error_file 记录标准错误流,$HOME/.pm2/logs/XXXerr.log),代码错误可在此文件查找;

out_file 记录标准输出流,$HOME/.pm2/logs/XXXout.log),如应用打印大量的标准输出,会导致pm2日志过大;

min_uptime 应用运行少于时间被认为是异常启动;

max_restarts 最大异常重启次数,即小于min_uptime运行时间重启次数;

autorestart 默认为true, 发生异常的情况下自动重启;

cron_restart crontab时间格式重启应用,目前只支持cluster模式;

force 默认false,如果true,可以重复启动一个脚本。pm2不建议这么做;

restart_delay 异常重启情况下,延时重启时间;

ecosystem.config的更多相关文章

  1. pm2用法详解+ecosystem.config

    对于后台进程的管理,常用的工具是crontab,可用于两种场景:定时任务和常驻脚本.关于常驻脚本,今天介绍一款更好用的工具:pm2,基于nodejs开发的进程管理器,适用于后台常驻脚本管理,同时对no ...

  2. NodeJs之pm2

    pm2 pm2是一个进程管理工具,可以用它来管理你的node进程,并查看node进程的状态,当然也支持性能监控,进程守护,负载均衡等功能. 开发过程中建议时不时的参看官方详细命令行使用:命令行 pm2 ...

  3. pm2部署多个nodejs项目配置教程

    实际项目部署中,我们服务器在启动的时候需要自动启动node服务.以前是通过liunx自带的命令启动.但是随着后台微服务越来越多.每次发布新程序.修改脚本太麻烦了.于是换成PM2来做. 1.首先安装pm ...

  4. pm2通过配置文件部署nodejs代码到服务器

    一.pm2文档地址: http://pm2.keymetrics.io/ 二.在本地项目下新建ecosystem.config.js文件,并且推送到远端(记得node_modules这个文件夹也得推送 ...

  5. pm2 常用命令解析

    https://blog.csdn.net/chengxuyuanyonghu/article/details/74910875 (以上基本命令解析,一下补充) pm2 ecosystem  #在当前 ...

  6. EXPRESS项目PM2启动NODE_ENV传参数不生效问题解决方法

    expree项目开发完,涉及到不同环境,要在启动到时候就要配置好环境变量, packge.json文件如下: "scripts": { "dev": " ...

  7. 使用pm2离线部署nodejs项目

    1.下载https://npm.taobao.org/mirrors/node/v8.11.1/node-v8.11.1-linux-x64.tar.xz 比如安装到/opt目录 xz -d node ...

  8. nuxt docker 运行

    nuxt 是vue 版的next ,实现的功能还是很方便的,对于需要开发性能要求比较高的web app 是一个很不错的选择 备注: 项目很简单,使用docker && docker-c ...

  9. pm2 官方文档 学习笔记

    一.安装 1.安装 npm install pm2 -g 2.更新 npm install pm2 -g && pm2 update pm2 update 是为了刷新 PM2 的守护进 ...

随机推荐

  1. CSS(4)---三大特性(继承性,层叠性,优先级)

    CSS(4)---三大特性(继承性,层叠性,优先级) CSS有三大特性分别是: 继承性,层叠性,优先级. 一.继承性 概念 给父元素设置一些属性,子元素也可以使用,这个我们就称之为继承性. 注意 1. ...

  2. c++中while(cin>>str)和ctrl z的相关问题探讨

    对于while (cin>>str)和ctrl z的问题,网上有以下解释: -------------------------------------------------------- ...

  3. 基于docker搭建Jenkins+Gitlab+Harbor+Rancher架构实现CI/CD操作

    一.各个组件的功能描述: Docker 是一个开源的应用容器引擎. Jenkis 是一个开源自动化服务器. (1).负责监控gitlab代码.gitlab中配置文件的变动: (2).负责执行镜像文件的 ...

  4. Okhttp3源码解析

    首先是Okhttp的使用: //缓存文件夹 File cacheFile = new File(getExternalCacheDir().toString(), "cache") ...

  5. Flink入门(一)——Apache Flink介绍

    Apache Flink是什么? ​ 在当代数据量激增的时代,各种业务场景都有大量的业务数据产生,对于这些不断产生的数据应该如何进行有效的处理,成为当下大多数公司所面临的问题.随着雅虎对hadoop的 ...

  6. C# 操作本地用户和组(基本全功能)

    今天学习了下怎么用.Net操作本地用户和组,因为目前网上还没看到一篇比较完整的文章,所以整理了下也分享出来,最后附带参考文档,方便深究的童鞋继续学习.==========  原创作品    作者:Yo ...

  7. 比较一下inner join(可直接简写为join)和where直接关联

    SELECT * FROM A ,B WHERE A.ID = B.ID 是比较常用的2个表关联.之前一直用这个,后来换了家公司发现这家公司的报表大多数都是用inner join,稍微研究了一下.查阅 ...

  8. [机器学习笔记]kNN进邻算法

    K-近邻算法 一.算法概述 (1)采用测量不同特征值之间的距离方法进行分类 优点: 精度高.对异常值不敏感.无数据输入假定. 缺点: 计算复杂度高.空间复杂度高. (2)KNN模型的三个要素 kNN算 ...

  9. Bootstrap中手指控制轮播图切换

    通过手指的滑动来控制轮播图中的图片内容的切换 // 1. 获取手指在轮播图元素上的一个滑动方向(左右) // 获取界面上的轮播图容器 var $carousels = $('.carousel'); ...

  10. spring、mybatis、事务项目整合,附完整代码和数据库文件

    配置依赖项 pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http:/ ...