view scripts/dump_dbm_sessions_db.py @ 6743:d659cfa8439c

Make roundup-server EACCES errors clearer If roundup-server is run on a priv port without privs (i.e. non root) it just returns: [Errno 13] Permission denied make this case clearer by reporting: Unable to bind to port 70, access not allowed, errno: 13 Permission denied so it points to the port bind operation as failing.
author John Rouillard <rouilj@ieee.org>
date Thu, 30 Jun 2022 16:26:53 -0400
parents 61481d7bbb07
children 1188bb423f92
line wrap: on
line source

#! /usr/bin/env python3
"""Usage: dump_dbm_sessions_db.py [filename]

Simple script to dump the otks and sessions dbm databases.  Dumps
sessions db in current directory if no argument is given.

Dump format:

   key: <timestamp> data

where <timestamp> is the human readable __timestamp decoded from the
data object.

"""

import dbm, marshal, sys
from datetime import datetime

try:
  file = sys.argv[1]
except IndexError:
  file="sessions"

try:
   db = dbm.open(file)
except Exception:
   print("Unable to open database: %s"%file)
   exit(1)

k = db.firstkey()
while k is not None:
    d = marshal.loads(db[k])
    t = datetime.fromtimestamp(d['__timestamp'])
    print("%s: %s %s"%(k, t, d))
    k = db.nextkey(k)

Roundup Issue Tracker: http://roundup-tracker.org/