[check_postgres] Issue with check_postgres bloat check.

Jehan-Guillaume de Rorthais jgdr at dalibo.com
Tue Nov 3 21:34:39 UTC 2015


On Tue, 3 Nov 2015 16:23:48 -0500
"Shaik, Baji" <baji.shaik at openscg.com> wrote:

> Thanks Jehan,
> 
> >
> > In check_pgactivity, the ratio express the size of the bloat in the table
> > (heap+toast). A table with a bloat ratio of 50% means that half of its
> > size is
> > bloat.
> >
> 
> I understand that. What surprises me that, it's comparing ration of actual
> size to expected size, but it should not be. It should compare bloat size
> to expected size, that actually gives you how much percentage of bloat a
> table/index has.

I'm not sure to understand. If the table have half bloat, do you mean the
reported bloat should be 100% ?

> However I am still confused on if I am missing something.

It sounds to me you are not missing something...

> > > On Tue, Oct 27, 2015 at 5:23 AM, Jehan-Guillaume de Rorthais <
> > > jgdr at dalibo.com> wrote:
> > >
> > > > On Fri, 16 Oct 2015 20:11:24 +0530
> > > > "Shaik, Baji" <baji.shaik at openscg.com> wrote:
> > > >
> > > > > Hi Team,
> > > >
> > > > Hi,
> > > >
> > > > > I have configured bloat_check for 50% of the table as WARNING,
> > however
> > > > even
> > > > > if tables is bloated less than the percentage configured, it is
> > throwing
> > > > an
> > > > > alert. If you see below example, ONLY 30% of the table is bloated,
> > > > however
> > > > > still I can see the table in the bloated list with 50% as critical
> > > > > threshold.
> > > > >
> > > > > Kindly let me know if I am missing anything.
> > > > >
> > > > > bloat_test=# \dt+ t
> > > > >                      List of relations
> > > > >  Schema | Name | Type  |    Owner     | Size  | Description
> > > > > --------+------+-------+--------------+-------+-------------
> > > > >  public | t    | table | enterprisedb | 69 MB |
> > > > > (1 row)
> > > > >
> > > > > bloat_test=# \q
> > > > > root at ubuntu:/home/bajishaik/check_postgres-2.22.0#
> > > > ./check_postgres_bloat
> > > > > --port=5445 --critical='500%' --db='bloat_test'
> > --dbuser='enterprisedb'
> > > > > POSTGRES_BLOAT OK: DB "bloat_test" (port=5445) (db bloat_test) table
> > > > > public.t rows:1500001 pages:8850 shouldbe:6608 (1.3X) wasted
> > > > size:18366464
> > > > > (17 MB) | public.t=18366464B
> > > > > root at ubuntu:/home/bajishaik/check_postgres-2.22.0#
> > > > > root at ubuntu:/home/bajishaik/check_postgres-2.22.0#
> > > > > root at ubuntu:/home/bajishaik/check_postgres-2.22.0#
> > > > ./check_postgres_bloat
> > > > > --port=5445 --critical='50%' --db='bloat_test'
> > --dbuser='enterprisedb'
> > > > > POSTGRES_BLOAT CRITICAL: DB "bloat_test" (port=5445) (db bloat_test)
> > > > table
> > > > > public.t rows:1500001 pages:8850 shouldbe:6608 (1.3X) wasted
> > > > size:18366464
> > > > > (17 MB) | public.t=18366464B
> > > >
> > > > I see you are using entreprisedb ? Could you have a look at
> > > > check_pgactivity by
> > > > any chance and tell me if it is compatible ? :-)
> > > >
> > > > See:
> > > >
> > > >
> > https://exchange.nagios.org/directory/Plugins/Databases/PostgresQL/check_pgactivity/details

-- 
Jehan-Guillaume de Rorthais
Dalibo
http://www.dalibo.com


More information about the Check_postgres mailing list