Skip to content

Commit 5c73081

Browse files
committed
Merge branch 'dev'
2 parents a097f2e + 1bd3e46 commit 5c73081

27 files changed

+779
-393
lines changed

.github/workflows/mamonsu-tests-dev.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ jobs:
5959
echo "::set-output name=zabbix_address::$(hostname -I | awk '{print $1}')"
6060
id: zabbix_address
6161
- name: Edit Zabbix address in agent.conf
62-
run: sed -i "s/\(address *= *\).*/\1 ${{ steps.zabbix_address.outputs.zabbix_address }}/" ${{ env.MAMONSU_PATH }}/github-actions-tests/sources/agent_3.4.0.conf
62+
run: sed -i "s/\(address *= *\).*/\1 ${{ steps.zabbix_address.outputs.zabbix_address }}/" ${{ env.MAMONSU_PATH }}/github-actions-tests/sources/agent_3.5.0.conf
6363

6464
- name: Copy test scripts to container
6565
run: docker exec $( echo "${{ matrix.docker_os }}" | sed 's/://' | sed 's/\.//' ) mkdir -p -m 755 /mamonsu/

.github/workflows/mamonsu-tests-master.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ jobs:
6363
echo "::set-output name=zabbix_address::$(hostname -I | awk '{print $1}')"
6464
id: zabbix_address
6565
- name: Edit Zabbix address in agent.conf
66-
run: sed -i "s/\(address *= *\).*/\1 ${{ steps.zabbix_address.outputs.zabbix_address }}/" ${{ env.MAMONSU_PATH }}/github-actions-tests/sources/agent_3.4.0.conf
66+
run: sed -i "s/\(address *= *\).*/\1 ${{ steps.zabbix_address.outputs.zabbix_address }}/" ${{ env.MAMONSU_PATH }}/github-actions-tests/sources/agent_3.5.0.conf
6767

6868
- name: Copy test scripts to container
6969
run: docker exec $( echo "${{ matrix.docker_os }}" | sed 's/://' | sed 's/\.//' ) mkdir -p -m 755 /mamonsu/

documentation/tools.md

Lines changed: 132 additions & 147 deletions
Large diffs are not rendered by default.

github-actions-tests/mamonsu_build.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ if [ "${OS%:*}" = "centos" ]; then
4545
chmod -R 777 /var/log/mamonsu/
4646
sudo mkdir -p /etc/mamonsu
4747
sudo touch /etc/mamonsu/agent.conf
48-
cat /mamonsu/github-actions-tests/sources/agent_3.4.0.conf > /etc/mamonsu/agent.conf
48+
cat /mamonsu/github-actions-tests/sources/agent_3.5.0.conf > /etc/mamonsu/agent.conf
4949
chmod -R 777 /etc/mamonsu/
5050
sudo yum -y install ./mamonsu*.rpm
5151
systemctl daemon-reload
@@ -74,7 +74,7 @@ elif [ "${OS%:*}" = "ubuntu" ]; then
7474
chmod -R 777 /var/log/mamonsu/
7575
sudo mkdir -p /etc/mamonsu
7676
sudo touch /etc/mamonsu/agent.conf
77-
cat /mamonsu/github-actions-tests/sources/agent_3.4.0.conf > /etc/mamonsu/agent.conf
77+
cat /mamonsu/github-actions-tests/sources/agent_3.5.0.conf > /etc/mamonsu/agent.conf
7878
chmod -R 777 /etc/mamonsu/
7979
sudo apt-get -y install ./mamonsu*.deb
8080
service mamonsu restart

github-actions-tests/sources/agent_3.4.0.conf renamed to github-actions-tests/sources/agent_3.5.0.conf

Lines changed: 69 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -81,17 +81,29 @@ format = [%(levelname)s] %(asctime)s - %(name)s - %(message)s
8181
max_memory_usage = 41943040
8282
interval = 15
8383

84+
[archivecommand]
85+
max_count_files = 2
86+
interval = 15
87+
8488
[bgwriter]
8589
interval = 15
8690

91+
[cfs]
92+
force_enable = False
93+
interval = 15
94+
95+
[checkpoint]
96+
max_checkpoint_by_wal_in_hour = 12
97+
interval = 300
98+
8799
[connections]
88100
percent_connections_tr = 90
89101
interval = 15
90102

91103
[databases]
92104
bloat_scale = 0.2
93105
min_rows = 50
94-
interval = 15
106+
interval = 300
95107

96108
[pghealth]
97109
uptime = 600
@@ -101,82 +113,84 @@ interval = 15
101113
[instance]
102114
interval = 15
103115

104-
[xlog]
105-
lag_more_than_in_sec = 300
116+
# This plugin allows detects possible memory leaks while working with PostgreSQL using /proc/pid/status and /proc/pid/statm
117+
# We use RES and SHR difference to calculate approximate volume of private anonymous backend memory.
118+
# If it exceeds private_anon_mem_threshold then that pid will be added to a message. An example is presented below
119+
# statm - 'pid: {pid}, RES {RES} - SHR {SHR} more then {private_anon_mem_threshold}\n'
120+
# Since Linux 4.5 RssAnon, RssFile and RssShmem have been added.
121+
# They allows to distinguish types of memory such as private anonymous, file-backed, and shared anonymous memory.
122+
# We are interested in RssAnon. If its value exceeds private_anon_mem_threshold then that pid will also be added to a message.
123+
# By default this plugin disabled. To enable this plugin - set bellow "enabled = False"
124+
# #interval - (onitoring frequency in seconds. 60 seconds by default
125+
# private_anon_mem_threshold - memory volume threshold after which we need an investigation about memory leak. 1GB by default.
126+
# Possible values MB, GB, TB. For example 1GB
127+
[memoryleakdiagnostic]
128+
enabled = True
106129
interval = 15
130+
private_anon_mem_threshold = 1GB
107131

108-
[statements]
132+
[oldest]
133+
max_xid_age = 18000000
134+
max_query_time = 18000
109135
interval = 15
110136

111137
[pgbuffercache]
112138
interval = 15
113139

114-
[waitsampling]
115-
interval = 15
116-
117-
[checkpoint]
118-
max_checkpoint_by_wal_in_hour = 12
140+
[pglocks]
119141
interval = 15
120142

121-
[oldest]
122-
max_xid_age = 18000000
123-
max_query_time = 18000
143+
# Get age (in seconds) of the oldest running prepared transaction and number of all prepared transactions for two-phase commit.
144+
# https://www.postgresql.org/docs/current/sql-prepare-transaction.html
145+
# https://www.postgresql.org/docs/12/view-pg-prepared-xacts.html
146+
# max_prepared_transaction_time - age of prepared transaction in seconds.
147+
# If pgsql.prepared.oldest exceeds max_prepared_transaction_time the trigger fires.
148+
[preparedtransaction]
149+
max_prepared_transaction_time = 60
124150
interval = 15
125151

126-
[pglocks]
127-
interval = 15
152+
# Get size of relations defined in this section
153+
# Relations - comma separated list of objects - tables and endexes (database_name.schema.relation) used to calculate relations size.
154+
# Example:
155+
# relations=postgres.pg_catalog.pg_class,postgres.pg_catalog.pg_user
156+
# If the relation is blocked by some process such as vacuum full or create index, the result will be -1
157+
# by default this plugin disabled. To enable this plugin - set bellow "enabled = False" and define a list of relations.
158+
[relationssize]
159+
enabled = True
160+
relations=postgres.pg_catalog.pg_class,mamonsu_test_db.mamonsu.config
161+
interval = 300
128162

129-
[cfs]
130-
force_enable = False
163+
[replication]
164+
lag_more_than_in_sec = 300
131165
interval = 15
132166

133-
[archivecommand]
134-
max_count_files = 2
167+
[statstatements]
135168
interval = 15
136169

137-
[procstat]
170+
[waitsampling]
138171
interval = 15
139172

140-
[diskstats]
173+
[wal]
141174
interval = 15
142175

143176
[disksizes]
144177
vfs_percent_free = 10
145178
vfs_inode_percent_free = 10
146179
interval = 15
147180

148-
[memory]
181+
[diskstats]
149182
interval = 15
150183

151-
[systemuptime]
152-
up_time = 300
184+
[la]
153185
interval = 15
154186

155-
[openfiles]
187+
[memory]
156188
interval = 15
157189

158190
[net]
159191
interval = 15
160192

161-
[la]
162-
interval = 15
163-
164-
[zbxsender]
165-
interval = 10
166-
167-
[logsender]
168-
interval = 2
169-
170-
[agentapi]
171-
interval = 15
172-
173-
# Get age (in seconds) of the oldest running prepared transaction and number of all prepared transactions for two-phase commit.
174-
# https://www.postgresql.org/docs/current/sql-prepare-transaction.html
175-
# https://www.postgresql.org/docs/12/view-pg-prepared-xacts.html
176-
# max_prepared_transaction_time - age of prepared transaction in seconds.
177-
# If pgsql.prepared.oldest exceeds max_prepared_transaction_time the trigger fires.
178-
[preparedtransaction]
179-
max_prepared_transaction_time = 60
193+
[openfiles]
180194
interval = 15
181195

182196
# Get size of backup catalogs stroring all WAL and backup files using pg_probackup
@@ -188,29 +202,18 @@ interval = 300
188202
backup_dirs = /backup_dir1,/backup_dir2
189203
pg_probackup_path = /usr/bin/pg_probackup-11
190204

191-
# Get size of relations defined in this section
192-
# Relations - comma separated list of objects - tables and endexes (database_name.schema.relation) used to calculate relations size.
193-
# Example:
194-
# relations=postgres.pg_catalog.pg_class,postgres.pg_catalog.pg_user
195-
# If the relation is blocked by some process such as vacuum full or create index, the result will be -1
196-
# by default this plugin disabled. To enable this plugin - set bellow "enabled = False" and define a list of relations.
197-
[relationssize]
198-
enabled = True
199-
relations=postgres.pg_catalog.pg_class,mamonsu_test_db.mamonsu.config
205+
[procstat]
200206
interval = 15
201207

202-
# This plugin allows detects possible memory leaks while working with PostgreSQL using /proc/pid/status and /proc/pid/statm
203-
# We use RES and SHR difference to calculate approximate volume of private anonymous backend memory.
204-
# If it exceeds private_anon_mem_threshold then that pid will be added to a message. An example is presented below
205-
# statm - 'pid: {pid}, RES {RES} - SHR {SHR} more then {private_anon_mem_threshold}\n'
206-
# Since Linux 4.5 RssAnon, RssFile and RssShmem have been added.
207-
# They allows to distinguish types of memory such as private anonymous, file-backed, and shared anonymous memory.
208-
# We are interested in RssAnon. If its value exceeds private_anon_mem_threshold then that pid will also be added to a message.
209-
# By default this plugin disabled. To enable this plugin - set bellow "enabled = False"
210-
# #interval - (onitoring frequency in seconds. 60 seconds by default
211-
# private_anon_mem_threshold - memory volume threshold after which we need an investigation about memory leak. 1GB by default.
212-
# Possible values MB, GB, TB. For example 1GB
213-
[memoryleakdiagnostic]
214-
enabled = True
208+
[systemuptime]
209+
up_time = 300
215210
interval = 15
216-
private_anon_mem_threshold = 1GB
211+
212+
[agentapi]
213+
interval = 15
214+
215+
[logsender]
216+
interval = 2
217+
218+
[zbxsender]
219+
interval = 10

mamonsu/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
__author__ = 'Dmitry Vasilyev'
22
__author_email__ = '[email protected]'
33
__description__ = 'Monitoring agent for PostgreSQL'
4-
__version__ = '3.4.0'
4+
__version__ = '3.5.0'
55
__licence__ = 'BSD'
66

77
__url__ = 'https://github.com/postgrespro/mamonsu'

0 commit comments

Comments
 (0)