-
Notifications
You must be signed in to change notification settings - Fork 31
/
lmd.ini.example
174 lines (140 loc) · 6.66 KB
/
lmd.ini.example
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
# Listen for incoming livestatus requests here
# TCP or unix sockets are allowed. Multiple entries are also valid.
# An http address can be defined as well.
Listen = ["127.0.0.1:3333", "/tmp/lmd.sock", "http://*:8080", "https://*:8443", "tls://127.0.0.1:3334"]
# List of cluster nodes (cluster mode).
# All cluster nodes must have their http server enabled (see Listen).
# A bare ip address may be provided if the port is the same on all nodes.
#Nodes = ["10.0.0.1", "http://10.0.0.2:8080"]
# Timeout for incoming client requests on `Listen` threads.
# Also the maximum request duration.
ListenTimeout = 60
# TLS certificate settings for https and tls listeners
#TLSKey = "server.key"
#TLSCertificate = "server.pem"
# set CA file to enforce client certificates
#TLSClientPems = ["client.pem"]
# set minimum allowed tls version, leave empty to allow all version or specify one of: tls1.0, tls1.1, tls1.2, tls1.3
TLSMinVersion = "tls1.1"
#TLSServerName = "server.fqdn" # set expected server name if different from connection string (used in certificate verification)
# destinations the daemon will log to. Defaults to "stdout"
# Choose from:
# - "/var/log/lmd.log" (example)
# a literal file name to log to
# - "stdout" or "stderr"
# to log to either standard output or standard error with colorized output
# - "stdout-journal"
# same as stdout, but does not colorize the output and does not print the date/time prefix.
# this is more suitable if you connect stdout to a log shipping service like systemd-journald, which will supply the timestamp itself
#LogFile = "lmd.log"
# May be Error, Warn, Info, Debug and Trace
LogLevel = "Info"
# LogSlowQueryThreshold sets the maximum amount of seconds before logging a query as slow query
LogSlowQueryThreshold = 5
# LogHugeQueryThreshold sets the maximum size in megabytes before logging a query as huge query
LogHugeQueryThreshold = 100
# LogQueryStats logs top most 3 queries every minute by total duration
LogQueryStats = false
# SyncIsExecuting can be used to enable syncing hosts/services that are running right now. It is
# used to indicate that a check is running but adds some additional overhead to syncing.
SyncIsExecuting = true
# Number of maximum parallel connections per backend. Used ex. to initially synchronize objects. Set to <= 1 to disable parallel fetching.
MaxParallelPeerConnections = 3
# CompressionMinimumSize sets the minimum number of characters to use compression
CompressionMinimumSize = 500
# CompressionLevel sets the compression level used to store plugin output, -1 is using the default level
# Can be set from 0 = no compression to 9 = best compression
CompressionLevel = -1
# After this amount of seconds, a backend will be marked down when there
# is no response
StaleBackendTimeout = 30
# Refresh remote sites every x seconds.
# Fast updates are ok, only changed hosts and services get fetched
# and once every `FullUpdateInterval` everything gets updated.
UpdateInterval = 7
# Offset used to filter by timestamp during synchronization
UpdateOffset = 3
# Run a full update on all objects every x seconds. Set to zero to turn off
# completely. This is usually not required and only needed if for uncommon
# reasons some updates slip through the normal delta updates.
#FullUpdateInterval = 600
# After `IdleTimeout` seconds of no activity (incoming queries for this backend)
# the slower update interval of `IdleInterval` seconds will be used.
# Don't set the timeout to low, clients will have to wait for a "spin up"
# query on the first access after idling.
IdleTimeout = 120
IdleInterval = 1800
# Connection timeout settings for remote connections.
# `ConnectTimeout` will be used when opening and testing
# the initial connection and `NetTimeout` is used for transferring data.
ConnectTimeout = 30
NetTimeout = 120
# Skip ssl certificate verification on https remote backends.
# Set to 1 to disabled any ssl verification checks.
SkipSSLCheck = 0
# Use keepalive for backend peer connections.
BackendKeepAlive = true
# Uncomment to export runtime statistics in prometheus format
#ListenPrometheus = "127.0.0.1:8080"
# Sets wether peer queries req/res object will be saved for crash reports
SaveTempRequests = true
# Naemon automatically regards a contact for a host also as a contact for all
# services of that host. We call this method loose. By setting it to strict, one
# must be an explicitly contact of a service in order to see it when using the
# AuthUser setting. Please note that Naemon makes all services that do not have
# any contact at all inherit all contacts of the host - regardless whether this
# option is set to strict or loose. The default option is loose.
ServiceAuthorization = "loose"
# If GroupAuthorization is strict (default), a user must be a contact on all
# hosts in the hostgroup in able to see the hostgroup. If GroupAuthorization is
# loose it is sufficient for the user to be a contact on one of the hosts in the
# hostgroup.
GroupAuthorization = "strict"
# MaxQueryFilter sets the maximum number of query filters. Set to zero to disable this check.
MaxQueryFilter = 1000
# LMD can check clock differences if supported by the remote peer. Time delta is crucial
# for synchronization. MaxClockDelta is the maximum amount of seconds a clock is allowed
# to go off. Set to zero to disable this check.
MaxClockDelta = 10.0
# use tcp connections
[[Connections]]
name = "Monitoring Site A"
id = "id1"
source = ["192.168.33.10:6557"]
# use tcp connections with multiple sources for clusters
[[Connections]]
name = "Monitoring Site A"
id = "id1"
source = ["192.168.33.10:6557", "192.168.33.20:6557"]
# or local unix sockets as remote sites
[[Connections]]
name = "Local Site"
id = "id2"
source = ["/var/tmp/nagios/run/live.sock"]
# use tcp connections with ipv6 address
[[Connections]]
name = "Monitoring Site A IPv6"
id = "id3"
source = ["[::1]:6557"]
# tcp connection to icinga2 with explicit flag set in case of autodetection fails
[[Connections]]
name = "Icinga2 Backend"
id = "icinga2"
source = ["[::1]:6557"]
flags = ["icinga2"]
# connect to thruk http(s) api
[[Connections]]
name = "Thruk HTTP"
id = "id4"
source = ["http://thruk.monitoring/omdsite/"]
auth = "authkey..."
# use tcp connections with tls encryption
[[Connections]]
name = "Monitoring Site A TLS"
id = "id5"
tlsCertificate = "client.pem" # if key and cert is set, client cert authentication will be done
tlsKey = "client.key"
tlsCA = "optional_server.crt" # used to verify server certificate
tlsSkipVerify = 0 # if set to 1, no common name verification will be done
source = ["tls://192.168.33.10:6557"]
# add more connections as you like...