def main():
# Default values
opt_repeat = False
opt_interval = 5
opt_server = "localhost"
opt_port = 6379
try:
opts, args = getopt.getopt(
sys.argv[1:],
"hVri:s:p:",
["help", "version", "repeat", "interval=", "server=", "port=",
"__unhandled__"])
except getopt.GetoptError as err:
print("ERROR:", err)
sys.exit(os.EX_USAGE)
for opt, opt_arg in opts:
if opt in ("-h", "--help"):
usage()
sys.exit()
elif opt in ("-V", "--version"):
version()
sys.exit()
elif opt in ("-r", "--repeat"):
opt_repeat = True
elif opt in ("-i", "--interval"):
try:
opt_interval = int(opt_arg)
if opt_interval == 0:
raise ValueError
except:
print("ERROR: specify interval as number of seconds")
sys.exit(os.EX_USAGE)
elif opt in ("-s", "--server"):
opt_server = opt_arg
if len(opt_server) == 0:
print("ERROR: specify host name or address of redis-server")
sys.exit(os.EX_USAGE)
elif opt in ("-p", "--port"):
try:
opt_port = int(opt_arg)
if not 0 <= opt_port <= 65535:
raise ValueError
except:
print("ERROR: specify port as number in [0, 65535]")
sys.exit(os.EX_USAGE)
else:
print("ERROR: unhandled option")
sys.exit(os.EX_USAGE)
logging_config()
logger = logging.getLogger(__name__)
# Gc periodically
client = RwlockClient(StrictRedis(host=opt_server, port=opt_port))
while True:
logger.info('redisrwlock gc')
client.gc()
if not opt_repeat:
break
time.sleep(opt_interval)
评论列表
文章目录