-
Notifications
You must be signed in to change notification settings - Fork 0
/
signaltest.task
200 lines (160 loc) · 7.96 KB
/
signaltest.task
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
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
# This is a task file, used to define settings for tasks in a neat way.
# You can use a file like this, rather than command line options.
# You don't have to use a task file, it is optional. You have more control
# over your task as you can define more settings in this file.
# Settings in this task file take precedence over command line settings,
# with the exception of environment variables. Environment variables set on
# the command line override those here.
# The file is Windows INI format.
# <-- lines beginning with # are a comment
# [this_is_a_section]
# key=value
##############################################################################
# Configure task properties
##############################################################################
[task]
# Task path. The full path name to the daemon program.
# Leave it blank to be relative to the godaemon directory.
path=
# Task program name. This is added to the <path> setting to find the daemon.
# By default this is the name passed on the command line to find the task file.
# (So if your task file is foo.task, <name> is foo)
# You can change that.
name=
# Specify any additional command line parameters to pass to the program here.
# If this is blank, then any extra command line parameters passed to the
# godaemon command line will be passed to the program instead.
commandline=
# Do you want godaemon to run the task as a different user ID / group ID?
# 0 = run as the same user/group as godaemon
# 1 = change to a different user and group
changeuser=0
# The user id to run the task as.
# You can specify a uid number, or a user name.
userid=nobody
# The group id to run the task as.
# You can specify a gid number, or a group name.
groupid=nogroup
##############################################################################
# Configure settings for the safety throttle (for restarting failed tasks)
##############################################################################
[safetythrottle]
# Use the safety throttle?
# If you don't use the safety throttle, godaemon will restart the task forever
# until godaemon is stopped.
# If you do use the safety throttle, then see the other options in this
# section to configure it.
safetythrottle=1
# If the task fails more than <maxfailures> in <timespan> seconds, then
# godaemon will not restart the task; godaemon will stop.
timespan=900
#maxfailures=5
# You can set maxfailures to -1 to restart the task endlessly. This is still
# better than disabling the safety throttle, as a delay will be included
# between launches.
maxfailures=-1
# Wait a minimum of <delay> milliseconds between restarting a failed task.
# This is the lower limit for the delay. The delay may be longer than this,
# see the other settings.
delay=3000
# If you want to exponentially back-off retries, set this to 1. This will
# cause godaemon to wait an additional "2 ^ failure count" seconds between
# restart attempts.
exponentialbackoff=1
# To prevent things getting out of hand with the exponential backoff, set the
# maximum number of seconds that godaemon will wait between restarting tasks.
exponentialmaxtime=120
##############################################################################
# Configure notification settings
##############################################################################
[notifications]
# If you want godaemon to send emails on task failure/restart, set this to 1
sendemail=0
# This is a comma seperated list of email addresses to send notifications to,
# if you have enabled them above
# godaemon includes the last few lines of log output when sending notification
# emails. How many lines of output do you want to include?
logtailcount=50
##############################################################################
# Configure task logging
##############################################################################
[logs]
# If you want godaemon to capture the task output (stdout and stderr) and
# write them to a log, set this to 1 (otherwise it is discarded)
capturelogs=1
# 1 = Use the system log path (/var/log/taskname.log)
# 0 = Use the default log path (applicationdir/taskname.log)
systempath=0
# If you want to use a custom log filename or path, then specify the ENTIRE
# file path here. This overrides the <systempath> setting.
#custompath=/var/log/myapp/mylog.log
##############################################################################
# Configure task control
##############################################################################
[control]
# 1 = Restart the task on failure
# 0 = Do not restart the task on failure (godaemon will shut down)
restartonfailure=1
# If you want godaemon to use a PID file to track the task, set this to 1.
# Generally you want this - if you disable this, you will be unable to stop
# the task using godaemon, and it will be possible to start multiple instances
# of the same task.
usepidfile=1
# 1 = Use the system pid path (/var/run/taskname.pid)
# 0 = Use the default pid path (applicationdir/taskname.pid)
systempath=0
# If you want to use a custom pid filename or path, then specify the ENTIRE
# file path here. This overrides the <systempath> setting.
#custompath=/opt/myapp/mytask.pid
# When stopping a task, godaemon will send SIGTERM. How long should godaemon
# wait for the task (in seconds) to stop before reporting failure or giving up?
stoptimeout=1
# If the task fails to stop within the timeout, do you want godaemon to
# forcefully stop the task?
# Note that even if you don't enable this, you can always use the force-stop
# action which has the same effect.
forcestop=0
##############################################################################
# Configure environment variables
##############################################################################
[environment]
# Any keys defined here will be passed to the task as environment variables.
# Key names will be cast to uppercase.
# Keys defined on the command like take priority over the ones in this file.
##############################################################################
# Configure task monitoring (NRPE support)
##############################################################################
[nrpe]
# When godaemon is called with the nagios-status command, it will usually
# just return "OK" if the task is running or "CRITICAL" if it is not running.
# You can get more detailed information by configuring some of these options.
# Do you want nagios-status to return WARNING if the task has failed recently?
# (within the safety throttle timespan, which by default is 900 seconds)
# If you use this option and you also use custom nagios status monitoring,
# the status that is reported depends:
# - If the task has not failed recently, send the custom status
# - If the task has failed recently, and the custom status is CRITICAL then
# send the custom status, otherwise send recently failed WARNING status.
# Generally, you want this set to 1.
alertrecentlyfailed=1
# If your program supports it, your program can ask godaemon to set a custom
# nagios status, for example "WARNING: Database failure" when queried with
# nagios-status. Do you want to enable this?
statusmonitoring=0
# For custom nagios status monitoring to work, godaemon needs to look for a
# specially formatted message in your program output (log). The format is like
# this:
# &<eyecatch>&{OK|WARNING|CRITICAL|UNKNOWN:custom message}
# For example, if your eyecatch is "nagios":
# &nagios&{OK:400 users connected}
# The message can appear in the middle of a log line, the following is valid:
# 2014-01-01T09:30:25 MainProcess(): Update status: &nagios&{OK:No problems}
# The <eyecatch> **MUST** be set if <statusmonitoring> is 1.
eyecatch=nagios
# For custom nagios status monitoring, what status do you want godaemon to
# report by default, until it is given a proper status report?
# Please format this string like this:
# defaultstatus=OK|WARNING|CRITICAL|UNKNOWN:Message
# If you don't set it, the default is: OK:Program starting...
defaultstatus=UNKNOWN:No report yet