diff options
author | Mark Beierl <mark.beierl@emc.com> | 2016-05-08 10:09:47 -0400 |
---|---|---|
committer | Mark Beierl <mark.beierl@emc.com> | 2016-05-09 09:34:44 -0400 |
commit | edbced4cda35e63c9ddc4e40a67807cbfd6d6c20 (patch) | |
tree | 3bbb5b35d093556414ba6c50876813c529ed45e9 /storperf/db/job_db.py | |
parent | da56b4dac702713045aaeeedbab9234e1825ffe0 (diff) |
Add plots
Adds matplotlib
Adds support for generating graphs showing performance results
Change-Id: Iba344baab89e35c0d5891a9d6b4c22c37666511e
JIRA: STORPERF-44
JIRA: STORPERF-50
Signed-off-by: Mark Beierl <mark.beierl@emc.com>
Diffstat (limited to 'storperf/db/job_db.py')
-rw-r--r-- | storperf/db/job_db.py | 54 |
1 files changed, 53 insertions, 1 deletions
diff --git a/storperf/db/job_db.py b/storperf/db/job_db.py index d42568a..412c6bc 100644 --- a/storperf/db/job_db.py +++ b/storperf/db/job_db.py @@ -45,7 +45,17 @@ class JobDB(object): except OperationalError: self.logger.debug("Job table exists") + try: + cursor.execute('''CREATE TABLE job_params + (job_id text, + param text, + value text)''') + self.logger.debug("Created job_params table") + except OperationalError: + self.logger.debug("Job params table exists") + cursor.execute('SELECT * FROM jobs') + cursor.execute('SELECT * FROM job_params') db.commit() db.close() @@ -177,7 +187,7 @@ class JobDB(object): with db_mutex: db = sqlite3.connect(JobDB.db_name) cursor = db.cursor() - cursor.execute("""select workload, start, end + cursor.execute("""select workload, start, end from jobs where workload like ?""", (workload_prefix,)) @@ -190,3 +200,45 @@ class JobDB(object): db.close() return workload_executions + + def record_workload_params(self, job_id, params): + """ + """ + with db_mutex: + + db = sqlite3.connect(JobDB.db_name) + cursor = db.cursor() + for param, value in params.iteritems(): + cursor.execute( + """insert into job_params + (job_id, + param, + value) + values (?, ?, ?)""", + (job_id, + param, + value,)) + db.commit() + db.close() + + def fetch_workload_params(self, job_id): + """ + """ + params = {} + with db_mutex: + + db = sqlite3.connect(JobDB.db_name) + cursor = db.cursor() + + cursor.execute( + "select param, value from job_params where job_id = ?", + (job_id,)) + + while (True): + row = cursor.fetchone() + if (row is None): + break + params[row[0]] = row[1] + + db.close() + return params |