blob: d1353e9e399ccfde0e017041a48a590e9af3842c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
|
= scriptmgr(1) =
== NAME ==
scriptmgr - utility for controlling other skytools scripts.
== SYNOPSIS ==
scriptmgr.py [switches] config.ini <command> [-a | -t service | job_name...]
== DESCRIPTION ==
scriptmgr is used to manage several scripts together. It discovers
potential jobs based on config file glob expression. From config file
it gets both job_name and service type (that is the main section name,
e.g. [cube_dispatcher]). For each service type there is subsection
in the config how to handle it. Unknown services are ignored.
== COMMANDS ==
=== status ===
scriptmgr config.ini status
Show status for all known jobs.
=== start ===
scriptmgr config.ini start -a
scriptmgr config.ini start -t service
scriptmgr config.ini start job_name1 job_name2 ...
Launch script(s) that are not running.
=== stop ===
scriptmgr config.ini stop -a
scriptmgr config.ini stop -t service
scriptmgr config.ini stop job_name1 job_name2 ...
Stop script(s) that are running.
=== restart ===
scriptmgr config.ini restart -a
scriptmgr config.ini restart -t service
scriptmgr config.ini restart job_name1 job_name2 ...
Restart scripts.
=== reload ===
scriptmgr config.ini reload -a
scriptmgr config.ini reload -t service
scriptmgr config.ini reload job_name1 job_name2 ...
Send SIGHUP to scripts that are running.
== CONFIG ==
include::common.config.txt[]
=== scriptmgr parameters ===
config_list::
List of glob patterns for finding config files. Example:
config_list = ~/dbscripts/conf/*.ini, ~/random/conf/*.ini
=== Service section parameters ===
cwd::
Working directory for script.
args::
Arguments to give to script, in addition to `-d`.
script::
Path to script. Unless script is in PATH, full path should be given.
disabled::
If this service should be ignored.
user::
Launch service as different unix user. Scriptmgr uses `sudo`
to switch users. So it either needs to be run as root,
or sudo config must allow it to launch daemons.
=== Example config file ===
[scriptmgr]
job_name = scriptmgr_livesrv
logfile = ~/log/%(job_name)s.log
pidfile = ~/pid/%(job_name)s.pid
config_list = ~/scripts/conf/*.ini
# defaults for all service sections
[DEFAULT]
cwd = ~/scripts
[table_dispatcher]
script = table_dispatcher.py
args = -v
[cube_dispatcher]
script = python2.4 cube_dispatcher.py
disabled = 1
[pgqadm]
script = ~/scripts/pgqadm.py
args = ticker
== COMMAND LINE SWITCHES ==
include::common.switches.txt[]
Options specific to scriptmgr:
-a, --all::
Operate on all non-disabled scripts.
-t 'service', --type='service'::
Operate on all non-disabled scripts of this service type.
-w, --wait::
Wait for script(s) after signalling.
|