mirror of
https://github.com/internetarchive/warcprox.git
synced 2025-01-18 13:22:09 +01:00
a few more revisions after consultation with noah.
This commit is contained in:
parent
872ef2d93b
commit
8f5232ac73
@ -31,12 +31,22 @@ def purge_stale_services(argv=None):
|
|||||||
prog=os.path.basename(argv[0]),
|
prog=os.path.basename(argv[0]),
|
||||||
description='purge-stale-services: utility to periodically purge stale entries from the "services" table.')
|
description='purge-stale-services: utility to periodically purge stale entries from the "services" table.')
|
||||||
|
|
||||||
arg_parser.add_argument("db", help="A RethinkDB database containing a 'services' table")
|
arg_parser.add_argument("-d", "--rethinkdb-db", required=True,
|
||||||
|
help="A RethinkDB database containing a 'services' table")
|
||||||
|
|
||||||
arg_parser.add_argument("-s", "--rethinkdb-servers",
|
arg_parser.add_argument("-s", "--rethinkdb-servers",
|
||||||
metavar="SERVERS", dest="servers", required=True,
|
metavar="SERVERS", dest="servers", required=True,
|
||||||
help="a comma-separated list of hostnames of rethinkdb servers. Required.")
|
help="rethinkdb servers, e.g. db0.foo.org,db0.foo.org:38015,db1.foo.org")
|
||||||
|
|
||||||
|
arg_parser.add_argument(
|
||||||
|
'-v', '--verbose', dest='log_level', action='store_const',
|
||||||
|
default=logging.INFO, const=logging.DEBUG, help=(
|
||||||
|
'verbose logging'))
|
||||||
args = arg_parser.parse_args(argv[1:])
|
args = arg_parser.parse_args(argv[1:])
|
||||||
|
logging.basicConfig(
|
||||||
|
stream=sys.stdout, level=args.log_level, format=(
|
||||||
|
'%(asctime)s %(process)d %(levelname)s %(threadName)s '
|
||||||
|
'%(name)s.%(funcName)s(%(filename)s:%(lineno)d) %(message)s'))
|
||||||
|
|
||||||
args.servers = [srv.strip() for srv in args.servers.split(",")]
|
args.servers = [srv.strip() for srv in args.servers.split(",")]
|
||||||
|
|
||||||
|
@ -313,7 +313,10 @@ class ServiceRegistry(object):
|
|||||||
available_services = healthy_services
|
available_services = healthy_services
|
||||||
|
|
||||||
def purge_stale_services(self, ttls_until_deletion=2):
|
def purge_stale_services(self, ttls_until_deletion=2):
|
||||||
result = self.rr.table('services').filter(
|
query = self.rr.table('services').filter(
|
||||||
lambda svc: r.now().sub(svc["last_heartbeat"]).gt(svc["ttl"] * ttls_until_deletion)
|
lambda svc: r.now().sub(svc["last_heartbeat"]).gt(svc["ttl"] * ttls_until_deletion)
|
||||||
).delete().run()
|
).delete()
|
||||||
|
logging.debug("Running query: %s", query)
|
||||||
|
result = query.run()
|
||||||
|
logging.debug("Results: %s", result)
|
||||||
return result
|
return result
|
||||||
|
Loading…
x
Reference in New Issue
Block a user