Exemplo n.º 1
0
def error_panel(db):

    host = zoom.system.request.host

    data = db(
        """
        select
            log.id,
            username,
            path,
            timestamp
        from log left join users on log.user_id = users.id
        where log.status in ("E") and timestamp>=%s
        and server = %s
        order by log.id desc
        limit 10
        """, today(), host)

    rows = []
    for rec in data:
        row = [
            link_to(str(rec[0]), '/admin/entry/' + str(rec[0])),
            link_to_user(rec[1]),
            rec[2],
            how_long_ago(rec[3]),
        ]
        rows.append(row)

    labels = 'id', 'user', 'path', 'when'
    return zoom.browse(rows, labels=labels, title=link_to_page('Errors'))
Exemplo n.º 2
0
def activity_panel(db):

    host = zoom.system.request.host

    data = db(
        """
    select
        log.id,
        users.username,
        log.address,
        log.path,
        log.timestamp,
        log.elapsed
    from log left join users on log.user_id = users.id
    where server = %s and path not like "%%\\/\\_%%"
    and log.status = 'C'
    order by timestamp desc
    limit 15
    """, host)

    rows = []
    for rec in data:
        row = [
            link_to(str(rec[0]), '/admin/entry/' + str(rec[0])),
            link_to_user(rec[1]),
            rec[2],
            zoom.link_to(rec[3]),
            how_long_ago(rec[4]),
            rec[4],
            rec[5],
        ]
        rows.append(row)

    labels = 'id', 'user', 'address', 'path', 'when', 'timestamp', 'elapsed'
    return zoom.browse(rows, labels=labels, title=link_to_page('Requests'))
Exemplo n.º 3
0
def users_panel(db):

    host = zoom.system.request.host

    data = db(
        """
    select
        users.username,
        max(log.timestamp) as timestamp,
        count(*) as requests
    from log, users
        where log.user_id = users.id
        and timestamp >= %s
        and server = %s
        and path not like "%%\\/\\_%%"
    group by users.username
    order by timestamp desc
    limit 10
    """,
        today() - datetime.timedelta(days=14), host)

    rows = []
    for rec in data:
        row = [
            link_to_user(rec[0]),
            how_long_ago(rec[1]),
            rec[2],
        ]
        rows.append(row)

    labels = 'user', 'last seen', 'requests'
    return zoom.browse(rows, labels=labels, title=link_to_page('Users'))
Exemplo n.º 4
0
    def index():
        """app index"""
        event_log = list(
            zoom.system.site.db('''
            select
                log.message, log.timestamp
            from
                log join users on log.user_id = users.id
            where log.app = "content" and log.status = 'A'
            order by log.timestamp desc
            limit 10;
        '''))
        parsed_log = list()
        for row in event_log:
            parsed_log.append((row[0], how_long_ago(row[1])))

        parsed_log.insert(0, ('Event', 'When'))
        content = zoom.browse(parsed_log, title='Recent Activity')
        return zoom.page(
            content,
            title='Overview',
        )
Exemplo n.º 5
0
def log_data(db, status, n, limit, q):
    """retreive log data"""

    host = zoom.system.request.host

    statuses = tuple(status)
    offset = int(n) * int(limit)
    cmd = """
        select
            id,
            status,
            user_id,
            address,
            app,
            path,
            timestamp,
            elapsed
        from log
        where status in %s and server = %s
        order by id desc
        limit {limit}
        offset {offset}
        """.format(limit=int(limit), offset=offset, statuses=statuses)
    data = db(cmd, statuses, host)
    data = [[
        link_to(str(item[0]), '/admin/entry/' + str(item[0])),
        item[1],
        zoom.helpers.who(item[2]),
        item[3],
        item[4],
        zoom.link_to(item[5]),
        how_long_ago(item[6]),
    ] + list(item[6:]) for item in data if q in repr(item)]
    labels = ('id', 'status', 'user', 'address', 'app', 'path', 'when',
              'timestamp', 'elapsed')
    return zoom.browse(data, labels=labels)