2014-09-02 28 views
2

我有一套由supervisord管理的程序。有一個程序,我們稱之爲myprogram,我需要在15個實例中運行它。使用numprocs參數很容易。Supervisord - 作爲參數的程序編號

有沒有辦法將程序編號作爲命令行程序傳遞給程序,以便每個實例都知道它的編號?

我需要實現同樣的事情,如果我在命令行中運行:

$ myprogram 1 
$ myprogram 2 
$ myprogram 3 
$ myprogram 4 
.... 

回答

1

是,在你的配置你的「命令」參數,你可以使用%(process_num)d,如

command=myprogram %(process_num)d 
0

,你也可以使用envionment變量: 這樣的:

environment=num=%(process_num)02d 

然後,您可以使用getenv()函數來獲取進程號。我通常更喜歡這種方法,因爲我提供參數來預測功能問題。