-
Notifications
You must be signed in to change notification settings - Fork 0
/
sql_instance_postgresql_log_parser_stats_database_flag_off.sql
33 lines (33 loc) · 1.66 KB
/
sql_instance_postgresql_log_parser_stats_database_flag_off.sql
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
select
type || ' ' || name as resource,
case
when coalesce(trim((arguments ->> 'database_version')), '') = '' then 'alarm'
when (arguments ->> 'database_version') not like 'POSTGRES%' then 'skip'
when (arguments -> 'settings' -> 'database_flags' ->> 'name') = 'log_parser_stats' and
(arguments -> 'settings' -> 'database_flags' ->> 'value') = 'off'
then 'ok'
else 'alarm'
end as status,
name || case
when coalesce(trim((arguments ->> 'database_version')), '') = ''
then ' ''database_version'' is not defined'
when (arguments ->> 'database_version') not like 'POSTGRES%'
then ' not a PostgreSQL database'
when (arguments -> 'settings') is null then ' ''settings'' is not defined'
when (arguments -> 'settings' -> 'database_flags') is null then ' ''settings.database_flags'' is not defined'
when coalesce(trim((arguments -> 'settings' -> 'database_flags' ->> 'name')), '') = ''
then ' ''settings.database_flags.name'' is not defined'
when coalesce(trim((arguments -> 'settings' -> 'database_flags' ->> 'value')), '') = ''
then ' ''settings.database_flags.value'' is not defined'
when (arguments -> 'settings' -> 'database_flags' ->> 'name') <> 'log_parser_stats'
then ' ''log_parser_stats'' database flag not set'
when (arguments -> 'settings' -> 'database_flags' ->> 'name') = 'log_parser_stats' and
(arguments -> 'settings' -> 'database_flags' ->> 'value') = 'off'
then ' ''log_parser_stats'' database flag set to ''off'''
else ' ''log_parser_stats'' database flag set to ''on'''
end || '.' reason,
path || ':' || start_line
from
terraform_resource
where
type = 'google_sql_database_instance';