根据Github上的说明,Node Supervisor原本是用于服务器上Node.js应用崩溃的时候,自己重新启动。当然它也可以监控你的项目的js(或CoffeeScript)文件变化,进而重启来方便我们调试应用程序。
总的来说,supervisor在开发过程中就是一个检测你的文件(代码)是否改变,从而重启服务的这个一个东西。
至于supervisor安装什么的,到处都是,我就不画蛇添足说这个了。
这篇文章主要是想讲讲supervisor参数设置以及格式问题(格式问题在我对supervisor不是很了解的时候是最痛苦的,甚至都不知道自己写对了还是写错了)
命令行中输出:supervisor -h,获取supervisor的help,里面会讲到supervisor的各种参数。显示结果为下图:
多的我就不发上来了。。。不然整个文章成了图片欣赏了。
总结一下,supervisor一共有以下几种参数:
1、-w|--watch <watchItems> //要监控的文件夹或者js文件,默认为"."
2、-i|--ignore <ignoreItems> //要忽略监视的文件或js文件
3、-p|--poll-interval <milliseconds> //监控文件变化的时间间隔(周期),默认为nodejs内置时间
4、-e|--extensions <extensions> //要监控的文件扩展名,默认为'node|js'
5、-x|--exec <executable> //要执行的主应用程序,默认为'node'
6、--debug //开启debug模式
7、--debug-brk[=port]
8、--harmony
9、-n|--no-restart-on error|exit
10、 --force-watch
11、-h|--help|-? //帮助
12、-q|--quiet //安静模式,不再显示debug信息
13、-V|--verbose
(其他没注释的不是很清楚,如果有知道的,希望能告诉我一声。。。)
这里给的例子如下:
总所周知,supervisor的使用方法为:supervisor app.js
那么这个参数应该怎么写。。我之前也是按照例子上写的。
比如说我要忽略一个app文件夹下面的ires文件夹。app/ires,图片如下:
这里Watching directory只显示了要监控的,我们设置的忽略的,并没有。。。所以格式不是这样的。
正确的格式是这样的:
supervisor -i app/ires app.js //忽略app文件夹下的ires文件夹
执行以下试试~
这里比上面多出来依据Ignoring directory,这次忽略是弄对了,就是这么弄的。