@@ -150,24 +150,26 @@ def graphs(self, template, dashboard=False):
150150 return []
151151
152152 def keys_and_queries (self , template_zabbix ):
153- result = []
154- if LooseVersion (self .VersionPG ) < LooseVersion ('13' ):
155- self .Items [5 ][1 ] = self .Items [5 ][1 ].format ("total_time" )
156- all_items = self .Items
157- else :
158- self .Items [5 ][1 ] = self .Items [5 ][1 ].format ("total_exec_time+total_plan_time" )
159- all_items = self .Items + self .Items_pg_13
153+ if self .extension_installed ('pg_stat_statements' ):
154+ result = []
155+ if LooseVersion (self .VersionPG ) < LooseVersion ('13' ):
156+ self .Items [5 ][1 ] = self .Items [5 ][1 ].format ("total_time" )
157+ all_items = self .Items
158+ else :
159+ self .Items [5 ][1 ] = self .Items [5 ][1 ].format ("total_exec_time+total_plan_time" )
160+ all_items = self .Items + self .Items_pg_13
160161
161- for i , item in enumerate (all_items ):
162- keys = item [0 ].split ('[' )
163- result .append ('{0}[*],$2 $1 -c "{1}"' .format ('{0}{1}.{2}' .format (self .key , keys [0 ], keys [1 ][:- 1 ]),
164- self .query .format (item [1 ])))
165-
166- if LooseVersion (self .VersionPG ) >= LooseVersion ('14' ):
167- all_items = self .Items_pg_14
168162 for i , item in enumerate (all_items ):
169163 keys = item [0 ].split ('[' )
170164 result .append ('{0}[*],$2 $1 -c "{1}"' .format ('{0}{1}.{2}' .format (self .key , keys [0 ], keys [1 ][:- 1 ]),
171- self .query_info .format (item [1 ])))
165+ self .query .format (item [1 ])))
172166
173- return template_zabbix .key_and_query (result )
167+ if LooseVersion (self .VersionPG ) >= LooseVersion ('14' ):
168+ all_items = self .Items_pg_14
169+ for i , item in enumerate (all_items ):
170+ keys = item [0 ].split ('[' )
171+ result .append ('{0}[*],$2 $1 -c "{1}"' .format ('{0}{1}.{2}' .format (self .key , keys [0 ], keys [1 ][:- 1 ]),
172+ self .query_info .format (item [1 ])))
173+ return template_zabbix .key_and_query (result )
174+ else :
175+ return
0 commit comments