[Soc-coordination] Status Report for debmetrics, Week 1

Joseph Bisch joseph.bisch at gmail.com
Fri May 23 20:53:46 UTC 2014


My project is debmetrics, which is the Debian Metrics Portal that
provides a uniform interface for adding, updating, and viewing various
metrics concerning Debian. You can take a look at the git repo.[0]

I started working a little before the official start of coding, so my
git repository was already setup and I had some specifications
written. I already had a manifest file format created to define data
about a metric. I also created a script called manifest2orm.py that
takes a manifest file and generates the python ORM code for
SQLAlchemy.

The first week I continued with some of the tasks for debmetrics. I
setup Sphinx for documentation. I created an account at readthedocs
and the documentation is now available at debmetrics.readthedocs.org.
As I work on the project I will add to the documentation. It gets
automatically generated from docstrings.

I made an initial config file format. It currently holds the database
credentials. I created a makefile that checks for new or changed
manifest files and runs manifest2orm.py to write the ORM code to disk
for use with SQLAlchemy. I did some research on API keys.

I created a basic pull runner that runs the scripts for metrics that
are of type pull (vs push). Right now it runs all scripts irrespective
of frequency, but later metrics will run at certain times based on the
frequency specified in the corresponding manifest file. The pull
runner should roll back on non-zero exit status, but does not right
now.

Next week I will continue where I left off. I will create a couple of
pull scripts that fetch data and put it in the database. I am creating
a couple so that I can be sure my code is general enough. I will
create a script to generate graphs from data in the database.

I will create a crontab to run the pull runner and generate the
graphs. The crontab will run the pull runner every five minutes. Then,
the pull runner will check if pull scripts need to be run and it will
run only those that need to be based on the freq key in the manifest
file. The freq key in the manifest is in crontab format and will
initially only support * and , special characters.

I will display the graphs on the debmetrics website. Initially the
graph will be a static graph of the complete data, but in the end
JavaScript will be used to allow the user to select a date range.

[0] http://anonscm.debian.org/gitweb/?p=users/josephbisch-guest/debmetrics.git;a=summary

Joseph Bisch



More information about the Soc-coordination mailing list