-
Notifications
You must be signed in to change notification settings - Fork 0
/
settings.conf
171 lines (132 loc) · 5.79 KB
/
settings.conf
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
##########################
# #
# General settings #
# #
##########################
# Comma-separated list of whitelisted users
# processes running with such users will not be monitored or limited
WHITELISTED_USERS=root,dbus,daemon
# Set the loglevel for the daemon
# Available Values: [error, notice, info, debug]
LOGLEVEL=info
# Debug level, only has an effect if LOGLEVEL is set to 'debug'
# Available Values: [1, 2]
DEBUG_LEVEL=2
# Number of faulty check-cycles before daemon terminates
# Available Values: [1 - 2147483647]
MAX_ERRORS=10
# Max number of chars which will be read from command
# This setting needs to be decreased if memory-issues should occur during operation
# Available Values: [1 - 2147483647]
MAX_CMD_CHARS_READ=5000
# Set the check-interval for the daemon in seconds
# Available Values: [1 - 2147483647] (0 is not allowed)
CHECK_INTERVAL=1
# Number of check cycles a process-threshold needs to be exceeded before an alert is triggered
# Available Values: [1 - 2147483647] (0 is not allowed)
CHECKS_BEFORE_ALERT=30
# Number of checks after alert before PID gets removed from penatly-list
# Available Values: [1 - 2147483647] (0 is not allowed)
CHECKS_COOLDOWN=60
# The CPU threshold for a process (can be overvritten via specific rule)
# Processes will put onto penalty list if they exceed this threshold
# Setting this to '0' will disable CPU monitoring
# Available Values: [(Disable) 0, (Percentage) 0.0% - 100.0%, 0% - 100%]
CPU_TRIGGER_THRESHOLD=80.0%
# The memory threshold for a process (can be overvritten via specific rule)
# This value can either be set in percentage ('%' symbol is mandatory), absolute value (e.g. 512K, 100M, 2G, etc.)
# or set to '0' which will disable the memory-check for processes
# Available Values: [(Disable) 0, (Percentage) 0.0% - 100.0%, 0% - 100%, (Absolute) 1B, 1024K, 10M, 2G, etc.]
MEM_TRIGGER_THRESHOLD=10.0%
# Enable or disable notifications globally
# Available Values: [(off) 0, (on) 1]
SEND_NOTIFICATIONS=1
# Decide if an alert should be triggered if a process changes it's state to Z or D
# Available Values: [(off) 0, (on) 1]
STATE_TRIGGER=0
# Only check processes which have a specific rule, all other processes will be skipped
# Available Values: [(off) 0, (on) 1]
SPECIFIC_RULES_CHECK_ONLY=0
# Decide if possible available rules should be read from RULES_DIRECTORY
# Available Values: [(off) 0, (on) 1]
LOAD_RULES=1
# Set the directory where the rules are stored
# All files ending with '.conf' or '.rule' will be read in this directory
RULES_DIRECTORY=/etc/pmdaemon/rules.d
# Cleanup of created cgroups after termination
# All created specific cgroups will be erased and processes will be unlimited again
# Available Values: [(off) 0, (on) 1]
TERM_CGROUP_CLEANUP=1
# Enable a global action which will be performed if a process exceeds the threshold of MAX_ALERTS_GLOBAL_ACTION
# Available Values: [(off) 0, (on) 1]
GLOBAL_ACTION_ENABLED=1
# Global action which should be performed
# jail = Processes will be put to a 'jail' cgroup and limited via JAIL_MEM_LIMIT and JAIL_CPU_LIMIT
# kill = Processes will be terminated
# freeze = Processes will be paused (SIGSTOP signal is sent)
# Available Values: [jail, kill, freeze]
GLOBAL_ACTION=jail
# Alert-Count which needs to be exceeded by a PID before GLOBAL_ACTION will be triggered
# Available Values: [1 - 2147483647] (0 is not allowed)
MAX_ALERTS_GLOBAL_ACTION=5
# CPU- and Memory-Limit for the jail-cgroup if GLOBAL_ACTION is set to 'jail'
# All PIDs which exceed the MAX_ALERTS_GLOBAL_ACTION threshold have to share these limited system-resources
# The memory limit will only have an effect if all memory-resources of the system are exceeded
# In this case OOM-Killer will terminate all PIDs from jail first
# Memory limit can be either set in percentage in regards to total-memory of the system ('%' symbol is mandatory)
# or as absolute value (e.g. 512K, 100M, 2G, etc.)
# Available Values: [(Disable) 0, (Percentage) 0.0% - 100.0%, 0% - 100%, (Absolute Values) 1B, 1024K, 10M, 2G, etc.]
JAIL_MEM_LIMIT=25.0%
# Available Values: [(Disable) 0, (Percentage) 0.0% - 100.0%, 0% - 100%]
JAIL_CPU_LIMIT=25.0%
##########################
# #
# Datacollector settings #
# #
##########################
#
###
##### GRAYLOG
###
#
# Enable/Disable Graylog logging (0=off, 1=on)
# Available Values: [(off) 0, (on) 1]
GRAYLOG_ENABLED=0
# Decide which method should be used to transfer data (http, TODO: udp and tcp will follow soon)
# Information can be found here: https://docs.graylog.org/docs/gelf
# Available Values: [http]
GRAYLOG_TRANSFER_METHOD=http
# The FQDN of the Graylog instance
GRAYLOG_FQDN=graylog.local
# The port of the graylog instance
# Available Values: [1 - 2147483647] (0 is not allowed)
GRAYLOG_PORT=12201
# Decide if HTTP or HTTPS should be used for transport
# Available Values: [(http) 0, (https) 1]
GRAYLOG_HTTP_SECURE=1
# Only used when running in 'http' mode, normally no need to alter this setting
# Leading '/' is mandatory
GRAYLOG_HTTP_PATH=/gelf
#
###
##### LOGSTASH
###
#
# Enable/Disable Logstash logging
# Available Values: [(off) 0, (on) 1]
LOGSTASH_ENABLED=0
# Decide which method should be used to transfer data (http, TODO: udp and tcp will follow soon)
# Information can be found here: https://www.elastic.co/guide/en/logstash/current/introduction.html
# Available Values: [http]
LOGSTASH_TRANSFER_METHOD=http
# The FQDN of the Logstash instance
LOGSTASH_FQDN=logstash.local
# The port of the Logstash instance
# Available Values: [1 - 2147483647] (0 is not allowed)
LOGSTASH_PORT=8080
# Decide if HTTP or HTTPS should be used for transport
# Available Values: [(http) 0, (https) 1]
LOGSTASH_HTTP_SECURE=1
# Only used when running in 'http' mode, normally no need to alter this setting
# Leading '/' is mandatory
LOGSTASH_HTTP_PATH=/