Skip to content

Commit 90977a7

Browse files
committed
modify cpo monitoring
1 parent 85dec58 commit 90977a7

42 files changed

Lines changed: 86 additions & 41 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

pkg/apis/cpo.opensource.cybertec.at/v1/zz_generated.deepcopy.go

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pkg/cluster/database.go

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,51 @@ const (
106106
107107
GRANT pg_execute_server_program TO cpo_exporter;
108108
109+
CREATE OR REPLACE FUNCTION exporter.update_pgbackrest_info()
110+
RETURNS VOID AS $$
111+
DECLARE
112+
last_entry_timestamp TIMESTAMP;
113+
record_count INT;
114+
BEGIN
115+
SELECT COUNT(*) INTO record_count
116+
FROM exporter.pgbackrestbackupinfo;
117+
118+
IF record_count > 0 THEN
119+
SELECT data_time INTO last_entry_timestamp
120+
FROM exporter.pgbackrestbackupinfo
121+
ORDER BY data_time DESC
122+
LIMIT 1;
123+
124+
IF last_entry_timestamp < NOW() - INTERVAL '5 minutes' THEN
125+
DELETE FROM exporter.pgbackrestbackupinfo;
126+
ELSE
127+
RETURN;
128+
END IF;
129+
END IF;
130+
131+
EXECUTE format(
132+
'COPY exporter.pgbackrestbackupinfo (data) FROM program ''pgbackrest info --output=json'' WITH (FORMAT text, DELIMITER ''|'')'
133+
);
134+
END;
135+
$$ LANGUAGE plpgsql;
136+
`
137+
cpoMonitoring = `
138+
GRANT pg_monitor TO cpo_exporter;
139+
GRANT SELECT ON TABLE pg_authid TO cpo_exporter;
140+
141+
CREATE SCHEMA IF NOT EXISTS exporter;
142+
ALTER SCHEMA exporter OWNER TO cpo_exporter;
143+
CREATE EXTENSION IF NOT EXISTS pgnodemx with SCHEMA exporter;
144+
alter extension pgnodemx UPDATE;
145+
CREATE TABLE IF NOT EXISTS exporter.pgbackrestbackupinfo (
146+
data jsonb NOT NULL,
147+
data_time timestamp with time zone DEFAULT now() NOT NULL
148+
)
149+
WITH (autovacuum_analyze_scale_factor='0', autovacuum_vacuum_scale_factor='0', autovacuum_vacuum_threshold='2', autovacuum_analyze_threshold='2');
150+
ALTER TABLE exporter.pgbackrestbackupinfo OWNER TO cpo_exporter;
151+
152+
GRANT pg_execute_server_program TO cpo_exporter;
153+
109154
CREATE OR REPLACE FUNCTION exporter.update_pgbackrest_info()
110155
RETURNS VOID AS $$
111156
DECLARE

pkg/generated/clientset/versioned/clientset.go

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pkg/generated/clientset/versioned/doc.go

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pkg/generated/clientset/versioned/fake/clientset_generated.go

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pkg/generated/clientset/versioned/fake/doc.go

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pkg/generated/clientset/versioned/fake/register.go

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pkg/generated/clientset/versioned/scheme/doc.go

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pkg/generated/clientset/versioned/scheme/register.go

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pkg/generated/clientset/versioned/typed/cpo.opensource.cybertec.at/v1/cpo.opensource.cybertec.at_client.go

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)