summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorRichard Jones <richard@mechanicalcat.net>2013-02-18 13:57:27 +1100
committerRichard Jones <richard@mechanicalcat.net>2013-02-18 13:57:27 +1100
commit2757bf046e5ef87d7d0dabb53b7ce9a662f74192 (patch)
treeadf1b09be66cccdfb944326cf124bc2fbfc44a6b /tools
parent37458863b8b3db2e48a7d5c9b5109d34f1486cc3 (diff)
downloaddecorator-2757bf046e5ef87d7d0dabb53b7ce9a662f74192.tar.gz
add stats dumper
Diffstat (limited to 'tools')
-rwxr-xr-xtools/dumpstats29
1 files changed, 29 insertions, 0 deletions
diff --git a/tools/dumpstats b/tools/dumpstats
new file mode 100755
index 0000000..9d6263d
--- /dev/null
+++ b/tools/dumpstats
@@ -0,0 +1,29 @@
+#!/usr/bin/python
+import os
+import csv
+import psycopg2
+import bz2
+import ConfigParser
+
+
+def main(config, out):
+ # Setup database connection
+ c = ConfigParser.ConfigParser({'user': '', 'password': ''})
+ c.read(config)
+ dbname = c.get('database', 'name')
+ dbuser = c.get('database', 'user')
+ dbpass = c.get('database', 'password')
+ dbhost = c.get('database', 'host')
+ dbconn = psycopg2.connect(database=dbname, user=dbuser, password=dbpass,
+ host=dbhost)
+ cursor = dbconn.cursor()
+ cursor.execute('select name,version,filename,downloads from release_files')
+ with bz2.BZ2File(out, 'w') as f:
+ w = csv.writer(f)
+ w.writerows(cursor.fetchall())
+ dbconn.close()
+
+if __name__ == '__main__':
+ import sys
+ statsdir = '/data/www/pypi/stats'
+ main(sys.argv[1], os.path.join(statsdir, 'latest-totals.csv.bz2'))