使用PM2监控Gruntjs任务运行器,是否可能?

时间:2015-10-05 11:17:00

标签: javascript angularjs node.js gruntjs pm2

我一直在创建一个angularjs应用程序并添加Gruntjs作为它的任务运行器..

因此,每当我尝试运行我的应用程序时,我都会转到项目目录并运行一个grunt server的Grunt任务。该命令由以下代码组成

grunt.registerTask('server',
    'start a web server with extras',
    function (target)
    {
      if (target === 'dist')
      {
        return grunt.task.run(['build', 'connect:dist:keepalive']);
      }

      grunt.task.run([
        'clean:server',
        'concurrent:server',
        'connect:livereload',
        'watch'
      ]);
    }
  );

我从项目经理处获得了一项新任务,使用pm2来控制grunt server以上。

所以只要grunt server任务崩溃,它就会重新启动..是否可以使用pm2?因为AFAIK pm2是Node.js的生产流程管理器,所以我不知道它是否与Grunt一起工作但是我知道Gruntjs是使用npm安装的

1 个答案:

答案 0 :(得分:2)

我已经设法做到了......显然解决方案很简单

首先运行pm2 ecosystem,它将生成一个ecosystem.json

并填写此选项

{
    "name": "management-app", //this is optional
    "script": "grunt", // the script that will be run
    "args": ["server"] //argument of the script
}

提供了ecosystem.json的配置文件后,运行

pm2 start ecosystem.json瞧!结果很棒!开始喜欢这个组件!