1
+ # This is a configuration file for mamonsu
2
+ # To get more information about mamonsu, visit https://postgrespro.ru/docs/postgrespro/12/mamonsu
3
+
4
+ ######### Connection parameters sections ##############
5
+
6
+ # specify connection parameters for the Postgres cluster
7
+ # in the user, password, and database fields, you must specify the mamonsu_user, mamonsu_password,
8
+ # and the mamonsu_database used for bootstrap, respectively.
9
+ # if you skipped the bootstrap, specify a superuser credentials and the database to connect to.
10
+
11
+ [postgres]
12
+ enabled = True
13
+ user = mamonsu
14
+ password = mamonsu
15
+ database = mamonsu_test_db
16
+ host = localhost
17
+ port = 5432
18
+ application_name = mamonsu
19
+ query_timeout = 10
20
+
21
+ # the address field must point to the running Zabbix server, while the client field must provide the name of
22
+ # the Zabbix host. You can find the list of hosts available for your account in the Zabbix web
23
+ # interface under Configuration > Hosts.
24
+ # re_send - True - in case of transmission error, mamonsu repeats sending metrics one by one to look in log metrics with error
25
+
26
+ [zabbix]
27
+ enabled = True
28
+ client = pg-master
29
+ address = 127.0.0.1
30
+ port = 10051
31
+ re_send = False
32
+
33
+ ######### General parameters sections ############
34
+
35
+ # enable or disable collection of system metrics.
36
+
37
+ [system]
38
+ enabled = True
39
+
40
+ # control the queue size of the data to be sent to the Zabbix server
41
+
42
+ [sender]
43
+ queue = 2048
44
+
45
+ # specify the location of mamonsu and whether it is allowed to access metrics from the command line
46
+
47
+ [agent]
48
+ enabled = True
49
+ host = 127.0.0.1
50
+ port = 10052
51
+
52
+ # specify custom plugins to be added for metrics collection
53
+
54
+ [plugins]
55
+ enabled = False
56
+ directory = /etc/mamonsu/plugins
57
+
58
+ # enable storing the collected metric data in text files locally.
59
+
60
+ [metric_log]
61
+ enabled = False
62
+ directory = /var/log/mamonsu
63
+ max_size_mb = 1024
64
+
65
+ # specify logging settings for mamonsu
66
+
67
+ [log]
68
+ file = /var/log/mamonsu/mamonsu.log
69
+ level = DEBUG
70
+ format = [%(levelname)s] %(asctime)s - %(name)s - %(message)s
71
+
72
+ ######### Individual Plugin Sections ############
73
+
74
+ # to disable any plugin set the enabled option to False.
75
+ # modify collection interval for each plugin in the interval field.
76
+ # set customer parameters for some plugins in the individual section.
77
+ # below listed all available parameters for each plugin to modify.
78
+
79
+ [health]
80
+ max_memory_usage = 41943040
81
+ interval = 60
82
+
83
+ [bgwriter]
84
+ interval = 60
85
+
86
+ [connections]
87
+ percent_connections_tr = 90
88
+ interval = 60
89
+
90
+ [databases]
91
+ bloat_scale = 0.2
92
+ min_rows = 50
93
+ interval = 300
94
+
95
+ [pghealth]
96
+ uptime = 600
97
+ cache = 80
98
+ interval = 60
99
+
100
+ [instance]
101
+ interval = 60
102
+
103
+ [xlog]
104
+ lag_more_than_in_sec = 300
105
+ interval = 60
106
+
107
+ [pgstatstatement]
108
+ interval = 60
109
+
110
+ [pgbuffercache]
111
+ interval = 60
112
+
113
+ [pgwaitsampling]
114
+ interval = 60
115
+
116
+ [checkpoint]
117
+ max_checkpoint_by_wal_in_hour = 12
118
+ interval = 300
119
+
120
+ [oldest]
121
+ max_xid_age = 18000000
122
+ max_query_time = 18000
123
+ interval = 60
124
+
125
+ [pglocks]
126
+ interval = 60
127
+
128
+ [cfs]
129
+ force_enable = False
130
+ interval = 60
131
+
132
+ [archivecommand]
133
+ max_count_files = 2
134
+ interval = 60
135
+
136
+ [procstat]
137
+ interval = 60
138
+
139
+ [diskstats]
140
+ interval = 60
141
+
142
+ [disksizes]
143
+ vfs_percent_free = 10
144
+ vfs_inode_percent_free = 10
145
+ interval = 60
146
+
147
+ [memory]
148
+ interval = 60
149
+
150
+ [systemuptime]
151
+ up_time = 300
152
+ interval = 60
153
+
154
+ [openfiles]
155
+ interval = 60
156
+
157
+ [net]
158
+ interval = 60
159
+
160
+ [la]
161
+ interval = 60
162
+
163
+ [zbxsender]
164
+ interval = 10
165
+
166
+ [logsender]
167
+ interval = 2
168
+
169
+ [agentapi]
170
+ interval = 60
171
+
172
+ # Get age (in seconds) of the oldest running prepared transaction and number of all prepared transactions for two-phase commit.
173
+ # https://www.postgresql.org/docs/current/sql-prepare-transaction.html
174
+ # https://www.postgresql.org/docs/12/view-pg-prepared-xacts.html
175
+ # max_prepared_transaction_time - age of prepared transaction in seconds.
176
+ # If pgsql.prepared.oldest exceeds max_prepared_transaction_time the trigger fires.
177
+ [preparedtransaction]
178
+ max_prepared_transaction_time = 60
179
+ interval = 60
180
+
181
+ # Get size of backup catalogs stroring all WAL and backup files using pg_probackup
182
+ # (https://github.com/postgrespro/pg_probackup)
183
+ # Trigger fires if some backup has bad status e.g. (ERROR,CORRUPT,ORPHAN).
184
+ [pgprobackup]
185
+ enabled = False
186
+ interval = 300
187
+ backup_dirs = /backup_dir1,/backup_dir2
188
+ pg_probackup_path = /usr/bin/pg_probackup-11
189
+
190
+ # Get size of relations defined in this section
191
+ # Relations - comma separated list of objects - tables and endexes (database_name.schema.relation) used to calculate relations size.
192
+ # Example:
193
+ # relations=postgres.pg_catalog.pg_class,postgres.pg_catalog.pg_user
194
+ # If the relation is blocked by some process such as vacuum full or create index, the result will be -1
195
+ # by default this plugin disabled. To enable this plugin - set bellow "enabled = False" and define a list of relations.
196
+ [relationssize]
197
+ enabled = False
198
+ relations=postgres.pg_catalog.pg_class,postgres.pg_catalog.pg_user
199
+ interval = 300
200
+
201
+ # This plugin allows detects possible memory leaks while working with PostgreSQL using /proc/pid/status and /proc/pid/statm
202
+ # We use RES and SHR difference to calculate approximate volume of private anonymous backend memory.
203
+ # If it exceeds private_anon_mem_threshold then that pid will be added to a message. An example is presented below
204
+ # statm - 'pid: {pid}, RES {RES} - SHR {SHR} more then {private_anon_mem_threshold}\n'
205
+ # Since Linux 4.5 RssAnon, RssFile and RssShmem have been added.
206
+ # They allows to distinguish types of memory such as private anonymous, file-backed, and shared anonymous memory.
207
+ # We are interested in RssAnon. If its value exceeds private_anon_mem_threshold then that pid will also be added to a message.
208
+ # By default this plugin disabled. To enable this plugin - set bellow "enabled = False"
209
+ # #interval - (onitoring frequency in seconds. 60 seconds by default
210
+ # private_anon_mem_threshold - memory volume threshold after which we need an investigation about memory leak. 1GB by default.
211
+ # Possible values MB, GB, TB. For example 1GB
212
+ [memoryleakdiagnostic]
213
+ enabled = False
214
+ interval = 60
215
+ private_anon_mem_threshold = 1GB
0 commit comments