Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
This repository was archived by the owner on Jul 6, 2021. It is now read-only.

Commitfa98897

Browse files
committed
Sort signs fix
1 parente814b1f commitfa98897

File tree

11 files changed

+76
-40
lines changed

11 files changed

+76
-40
lines changed

‎pghrep/plugins/H002.go

Lines changed: 26 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package main
33
import (
44
"../src/pyraconv"
55
"strings"
6+
"../src/orderedmap"
67
)
78

89
varDatamap[string]interface{}
@@ -38,16 +39,22 @@ func compareHostsData(data map[string]interface{}) {
3839
hosts:=pyraconv.ToInterfaceMap(data["hosts"])
3940
master:=pyraconv.ToString(hosts["master"])
4041
replicas:=pyraconv.ToStringArray(hosts["replicas"])
41-
resultData:=make(map[string]interface{})
42+
resultData:=orderedmap.New()//make(map[string]interface{})
4243

4344
results:=pyraconv.ToInterfaceMap(data["results"])
4445
masterData:=pyraconv.ToInterfaceMap(results[master])
4546
masterData=pyraconv.ToInterfaceMap(masterData["data"])
4647

4748
allUnusedIndexes:=make(map[string]bool)
4849
uIndexesData:=pyraconv.ToInterfaceMap(masterData["unused_indexes"])
49-
uIndexes:=make(map[string]interface{})
50-
forindexName,value:=rangeuIndexesData {
50+
uIndexes:=orderedmap.New()
51+
uKeys:=pyraconv.ToStringArray(uIndexesData["_keys"])
52+
fori:=0;i<len(uKeys);i++ {
53+
indexName:=uKeys[i]
54+
value:=uIndexesData[indexName]
55+
if (indexName=="_keys") {
56+
continue
57+
}
5158
valueData:=pyraconv.ToInterfaceMap(value);
5259
idxScanValue:=pyraconv.ToInt64(valueData["idx_scan"])
5360
idxScanSum:=idxScanValue
@@ -64,13 +71,19 @@ func compareHostsData(data map[string]interface{}) {
6471
ifidxScanSum==0 {
6572
allUnusedIndexes[indexName]=true
6673
}
67-
uIndexes[indexName]=indexData
74+
uIndexes.Set(indexName,indexData)
6875
}
69-
resultData["unused_indexes"]=uIndexes
76+
resultData.Set("unused_indexes",*uIndexes)
7077

7178
rIndexesData:=pyraconv.ToInterfaceMap(masterData["redundant_indexes"])
72-
rIndexes:=make(map[string]interface{})
73-
forindexName,value:=rangerIndexesData {
79+
rIndexes:=orderedmap.New()
80+
rKeys:=pyraconv.ToStringArray(rIndexesData["_keys"])
81+
fori:=0;i<len(rKeys);i++ {
82+
indexName:=rKeys[i]
83+
value:=uIndexesData[indexName]
84+
if (indexName=="_keys") {
85+
continue
86+
}
7487
valueData:=pyraconv.ToInterfaceMap(value);
7588
idxScanValue:=pyraconv.ToInt64(valueData["index_usage"])
7689
idxScanSum:=idxScanValue
@@ -87,9 +100,9 @@ func compareHostsData(data map[string]interface{}) {
87100
ifidxScanSum==0 {
88101
allUnusedIndexes[indexName]=true
89102
}
90-
rIndexes[indexName]=indexData
103+
rIndexes.Set(indexName,indexData)
91104
}
92-
resultData["redundant_indexes"]=rIndexes
105+
resultData.Set("redundant_indexes",*rIndexes)
93106

94107
dropCode:=make(map[string]interface{})
95108
revertCode:=make(map[string]interface{})
@@ -105,10 +118,11 @@ func compareHostsData(data map[string]interface{}) {
105118
}
106119
}
107120

108-
resultData["drop_code"]=dropCode
109-
resultData["revert_code"]=revertCode
121+
resultData.Set("drop_code",dropCode)
122+
resultData.Set("revert_code",revertCode)
110123

111-
data["resultData"]=resultData
124+
rd:=resultData.ToInterfaceArray()
125+
data["resultData"]=rd
112126
}
113127

114128
funcgetReplicaIndexUsage(datamap[string]interface{},replicastring,indexNamestring) (int64) {

‎pghrep/templates/A003.tpl

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,11 @@
33
## Observations ##
44
{{if .hosts.master}}
55
### Master (`{{.hosts.master}}`) ###
6-
Setting | Value | Unit | Pretty value
7-
--------|-------|------|--------------
6+
&#9660;&nbsp;Category |Setting | Value | Unit | Pretty value
7+
---------|---------|-------|------|--------------
88
{{ range$i,$key := (index (index (index .results .hosts.master)"data")"_keys")}}
99
{{-$value := (index (index (index $.results $.hosts.master)"data")$key) -}}
10-
[{{$key}}](https://postgresqlco.nf/en/doc/param/{{$key}}) |{{ Br$value.setting}} |{{if$value.unit}}{{$value.unit}}{{ end}} |{{ UnitValue$value.setting$value.unit}}
10+
{{$value.category}}|[{{$key}}](https://postgresqlco.nf/en/doc/param/{{$key}}) |{{ Br$value.setting}} |{{if$value.unit}}{{$value.unit}}{{ end}} |{{ UnitValue$value.setting$value.unit}}
1111
{{ end}}
1212
{{else}}
1313
No data

‎pghrep/templates/A005.tpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
## Observations ##
44
{{if .hosts.master}}
55
### Master (`{{.hosts.master}}`) ###
6-
Database | Extension name | Installed version | Default version | Is old
6+
&#9660;&nbsp;Database | Extension name | Installed version | Default version | Is old
77
---------|----------------|-------------------|-----------------|--------
88
{{ range$d,$db := (index (index (index .results .hosts.master)"data")"_keys") -}}
99
{{-$dbData := (index (index (index $.results $.hosts.master)"data")$db) -}}

‎pghrep/templates/A006.tpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
{{if .diffData}}
55
### Settings (pg_settings) that differ ###
66
{{if (index .diffData"pg_settings")}}
7-
Setting |{{.hosts.master}}{{ range$skey,$host := .hosts.replicas}}|{{$host}}{{ end}}
7+
&#9660;&nbsp;Setting |{{.hosts.master}}{{ range$skey,$host := .hosts.replicas}}|{{$host}}{{ end}}
88
--------|-------{{ range$skey,$host := .hosts.replicas}}|--------{{ end}}
99
{{ range$key,$value := (index .diffData"pg_settings")}}{{$key}}{{ range$key,$value :=$value}} |{{if (index$value"unit")}}{{ UnitValue (index$value"value") (index$value"unit")}}{{else}}{{ index$value"value"}}{{ end}}{{ end}}
1010
{{ end}}

‎pghrep/templates/F001.tpl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
## Observations ##
44
{{if .hosts.master}}
55
### Master (`{{.hosts.master}}`) ###
6-
Setting name | Value | Unit | Pretty value
6+
&#9660;&nbsp;Setting name | Value | Unit | Pretty value
77
-------------|-------|------|--------------
88
{{ range$i,$key := (index (index (index (index (index .results .hosts.master)"data")"settings")"global_settings")"_keys") -}}
99
{{-ifne$key"hot_standby_feedback" -}}
@@ -14,7 +14,7 @@ Setting name | Value | Unit | Pretty value
1414

1515
{{if (index (index (index (index .results .hosts.master)"data")"settings")"table_settings")}}
1616
#### Tables settings override ####
17-
Namespace | Relation | Options
17+
&#9660;&nbsp;Namespace | Relation | Options
1818
----------|----------|------
1919
{{ range$i,$key := (index (index (index (index (index .results .hosts.master)"data")"settings")"table_settings")"_keys")}}
2020
{{-$value := (index (index (index (index (index $.results $.hosts.master)"data")"settings")"table_settings")$key) -}}

‎pghrep/templates/F008.tpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#{{ .checkId}} Autovacuum:resource usage #
1+
#{{ .checkId}} Autovacuum:Resource usage #
22

33
## Observations ##
44

‎pghrep/templates/H002.tpl

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,16 @@
33
## Observations ##
44

55
{{if .resultData}}
6+
67
Stats reset:{{ (index (index (index .results .hosts.master)"data")"database_stat").stats_age}} ago ({{ DtFormat (index (index (index .results .hosts.master)"data")"database_stat").stats_reset}})
78
Report created:{{ DtFormat .timestamptz}}
89

910
{{if .resultData.unused_indexes}}
1011
### Never Used Indexes ###
11-
Index |{{.hosts.master}} usage{{ range$skey,$host := .hosts.replicas}}|{{$host}} usage{{ end}}| Index size | Usage
12+
Index |{{.hosts.master}} usage{{ range$skey,$host := .hosts.replicas}}|{{$host}} usage{{ end}}|&#9660;&nbsp;Index size | Usage
1213
--------|-------{{ range$skey,$host := .hosts.replicas}}|--------{{ end}}|-----|-----
13-
{{ range$key,$value := (index .resultData"unused_indexes")}}
14+
{{ range$i,$key := (index (index .resultData"unused_indexes")"_keys")}}
15+
{{-$value := (index (index $.resultData"unused_indexes")$key) -}}
1416
{{-ifne$key"_keys" -}}
1517
{{-ifeq$value.master.reason"Never Used Indexes" -}}
1618
{{-if$value.usage -}}
@@ -29,7 +31,8 @@ Index | {{.hosts.master}} usage {{ range $skey, $host := .hosts.replicas }}| {{
2931
### Other unused indexes ###
3032
Index | Reason |{{.hosts.master}}{{ range$skey,$host := .hosts.replicas}}|{{$host}}{{ end}}| Usage
3133
------|--------|-------{{ range$skey,$host := .hosts.replicas}}|--------{{ end}}|-----
32-
{{ range$key,$value := (index .resultData"unused_indexes")}}
34+
{{ range$i,$key := (index (index .resultData"unused_indexes")"_keys")}}
35+
{{-$value := (index (index $.resultData"unused_indexes")$key) -}}
3336
{{-ifne$key"_keys" -}}
3437
{{-ifne$value.master.reason"Never Used Indexes" -}}
3538
{{$key}} |{{$value.master.reason}} | Usage:&nbsp;{{$value.master.idx_scan}}<br/>Index&nbsp;size:{{ Nobr$value.master.index_size}}<br/>Table&nbsp;size:{{ Nobr$value.master.table_size}}{{ range$skey,$host := $.hosts.replicas}} | Usage:&nbsp;{{ (index$value$host).idx_scan}}<br/>Index&nbsp;size:{{ Nobr (index$value$host).index_size}}<br/>Table&nbsp;size:{{ Nobr (index$value$host).table_size}}{{- end -}} |{{if$value.usage}} Used{{else}}Not used{{ end}}
@@ -45,7 +48,8 @@ Index | Reason |{{.hosts.master}} {{ range $skey, $host := .hosts.replicas }}| {
4548

4649
Index |{{.hosts.master}} usage{{ range$skey,$host := .hosts.replicas}}|{{$host}} usage{{ end}}| Usage | Index size
4750
--------|-------{{ range$skey,$host := .hosts.replicas}}|--------{{ end}}|-----|-----
48-
{{ range$key,$value := (index .resultData"redundant_indexes")}}
51+
{{ range$i,$key := (index (index .resultData"redundant_indexes")"_keys")}}
52+
{{-$value := (index (index $.resultData"redundant_indexes")$key) -}}
4953
{{-ifne$key"_keys" -}}
5054
{{-if$value.usage -}}
5155
{{-else -}}

‎resources/checks/A005_extensions.sh

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,19 +3,27 @@
33
sql=$(curl -s -L https://raw.githubusercontent.com/NikolayS/postgres_dba/5.0/sql/e1_extensions.sql| awk'{gsub("; *$", "", $0); print $0}')
44

55
dbs=$(${CHECK_HOST_CMD}"${_PSQL} -f -"<<SQL
6-
select datname from pg_database where datname not in ('template0', 'template1', 'postgres')
6+
select
7+
datname
8+
from pg_database
9+
where datname not in ('template0', 'template1', 'postgres')
10+
order by datname
711
SQL
812
)
913

1014
result="{ }"
1115

1216
forcur_dbin${dbs};do
13-
1417
object=$(${CHECK_HOST_CMD}"${_PSQL} -d"$cur_db" -f -"<<SQL
1518
with data as (
16-
$sql
19+
$sql
1720
), withsettins as (
18-
select data.*, (select json_object_agg(name, setting) from pg_settings where name ~ data.name) as settings from data
21+
select
22+
data.*,
23+
(select json_object_agg(name, setting)
24+
from pg_settings
25+
where name ~ data.name) as settings from data
26+
order by name
1927
)
2028
select json_object_agg(withsettins.name, withsettins) as json from withsettins;
2129
SQL

‎resources/checks/A006_pg_conf_diff.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Collect pg_settings and pg_config values data to compare with same values from other domains
22
# Require comparation in plugin
3-
pg_settings=$(${CHECK_HOST_CMD}"${_PSQL} -c\"select json_object_agg(s.name, s) from pg_settings s;\"")
4-
pg_config=$(${CHECK_HOST_CMD}"${_PSQL} -c\"select json_object_agg(c.name,c) from pg_configc;\"")
3+
pg_settings=$(${CHECK_HOST_CMD}"${_PSQL} -c\"select json_object_agg(s.name, s) from(select * frompg_settings s order by name) s;\"")
4+
pg_config=$(${CHECK_HOST_CMD}"${_PSQL} -c\"select json_object_agg(s.name,s) from(select * frompg_configs order by name) s;\"")
55
echo'{ "pg_settings":'$pg_settings', "pg_config":'$pg_config'}'
66

‎resources/checks/F001_autovacuum_settings.sh

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,32 @@
11
settings=$(${CHECK_HOST_CMD}"${_PSQL} -f -"<<SQL
22
with global_settings as (
3-
select json_object_agg(s.name, s) from pg_settings s
4-
where (
5-
name ~ e'^(auto)?vacuum'
6-
or name in (
7-
'hot_standby_feedback',
8-
'maintenance_work_mem'
3+
select
4+
json_object_agg(s.name, s)
5+
from (
6+
select *
7+
from pg_settings
8+
where (
9+
name ~ e'^(auto)?vacuum'
10+
or name in (
11+
'hot_standby_feedback',
12+
'maintenance_work_mem'
13+
)
914
)
10-
)
15+
order by name
16+
) s
1117
), table_settings as (
12-
select json_object_agg(s.namespace || '.' || s.relname, s) from
18+
select
19+
json_object_agg(s.namespace || '.' || s.relname, s)
20+
from
1321
(select
1422
(select nspname from pg_namespace where oid = relnamespace)
1523
namespace,
1624
relname,
1725
reloptions
1826
from pg_class
19-
where reloptions::text ~ 'autovacuum') s
27+
where reloptions::text ~ 'autovacuum'
28+
order by namespace, relname
29+
) s
2030
)
2131
select json_build_object('global_settings', (select * from global_settings), 'table_settings', (select * from table_settings));
2232
SQL

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp