diff options
Diffstat (limited to 'cmd/monwork')
-rw-r--r-- | cmd/monwork/main.go | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/cmd/monwork/main.go b/cmd/monwork/main.go index 5c71a60..13c4f39 100644 --- a/cmd/monwork/main.go +++ b/cmd/monwork/main.go @@ -218,11 +218,13 @@ var ( where c.last_refresh < c.updated or c.last_refresh is null limit 1 for update of c skip locked;` - SQLRefreshActiveCheck = `insert into active_checks(check_id, cmdline, intval, enabled, notify, msg) -select id, $2, c.intval, c.enabled, c.notify, case when ac.msg is null then '' else ac.msg end from checks c + SQLRefreshActiveCheck = `insert into active_checks(check_id, cmdline, intval, enabled, notify, msg, mapping_id) +select c.id, $2, c.intval, c.enabled, c.notify, case when ac.msg is null then '' else ac.msg end, case when c.mapping_id is not null then c.mapping_id when n.mapping_id is not null then n.mapping_id else 1 end +from checks c left join active_checks ac on c.id = ac.check_id -where id = $1 +left join nodes n on c.node_id = n.id +where c.id = $1 on conflict(check_id) -do update set cmdline = $2, intval = excluded.intval, enabled = excluded.enabled, notify = excluded.notify;` +do update set cmdline = $2, intval = excluded.intval, enabled = excluded.enabled, notify = excluded.notify, mapping_id = excluded.mapping_id;` SQLUpdateLastRefresh = `update checks set last_refresh = now() where id = $1;` ) |