bigtables.py
author Radek Brich <radek.brich@devl.cz>
Tue, 19 Jul 2011 14:36:33 +0200
changeset 3 1fe6c30f7700
parent 2 efee419b7a2d
child 5 57cf8fdff5ed
permissions -rwxr-xr-x
pgmanager: fix logging of queries

#!/usr/bin/env python3.2

from pgtools import pgbrowser
from common import prettysize
from toolbase import ToolBase


class BigTablesTool(ToolBase):
    def __init__(self):
        ToolBase.__init__(self, name='bigtables', desc='List largest tables.')
        self.init()

    def main(self):
        browser = pgbrowser.PgBrowser(self.pgm.get_conn('target'))

        tables = browser.list_tables()
        for table in sorted(tables, reverse=True, key=lambda x: x['size'])[:20]:
            print(prettysize.prettysize_short(table['size']).rjust(8), table['name'], sep='  ')


tool = BigTablesTool()
tool.main()