zulip/zephyr/lib/stats.py

22 lines
562 B
Python

import os
import logging
STATS_DIR = os.path.join(os.path.dirname(__file__), "..", "..", "stats")
def update_stat(name, value):
try:
os.mkdir(STATS_DIR)
except OSError:
pass
base_filename = os.path.join(STATS_DIR, name)
tmp_filename = base_filename + ".new"
try:
with file(tmp_filename, "w") as stat_file:
stat_file.write("%s\n" % (str(value),))
os.rename(tmp_filename, base_filename)
except (OSError, IOError) as e:
logging.info("Could not update statistic '%s': %s" % (name, e))