예제 #1
0
 def _handle_request(self, req):
     title = 'Statistics'
     stats = find_current_stats(self.conn)
     basic = {
         'submissions': stats.get('submission.all', 0),
         'fingerprints': stats.get('fingerprint.all', 0),
         'tracks': stats.get('track.all', 0),
         'mbids': stats.get('mbid.all', 0),
         'puids': stats.get('puid.all', 0),
         'contributors': stats.get('account.active', 0),
         'mbids_both': stats.get('mbid.both', 0),
         'mbids_onlypuid': stats.get('mbid.onlypuid', 0),
         'mbids_onlyacoustid': stats.get('mbid.onlyacoustid', 0),
     }
     track_mbid = self._get_pie_chart(stats, 'track.%dmbids')
     mbid_track = self._get_pie_chart(stats, 'mbid.%dtracks')
     basic['tracks_with_mbid'] = basic['tracks'] - stats.get('track.0mbids', 0)
     basic['tracks_with_mbid_percent'] = percent(basic['tracks_with_mbid'], basic['tracks'])
     top_contributors = find_top_contributors(self.conn)
     daily_raw = find_daily_stats(self.conn, ['submission.all', 'fingerprint.all', 'track.all', 'mbid.all', 'puid.all'])
     daily = {
         'submissions': daily_raw['submission.all'],
         'fingerprints': daily_raw['fingerprint.all'],
         'tracks': daily_raw['track.all'],
         'mbids': daily_raw['mbid.all'],
         'puids': daily_raw['puid.all'],
     }
     lookups = find_lookup_stats(self.conn)
     return self.render_template('stats.html', title=title, basic=basic,
         track_mbid=track_mbid, mbid_track=mbid_track,
         top_contributors=top_contributors, daily=daily, lookups=lookups)
예제 #2
0
def stats():
    title = 'Statistics'
    stats = find_current_stats(db.session.connection())
    basic = {
        'submissions': stats.get('submission.all', 0),
        'fingerprints': stats.get('fingerprint.all', 0),
        'tracks': stats.get('track.all', 0),
        'mbids': stats.get('mbid.all', 0),
        'contributors': stats.get('account.active', 0),
    }
    track_mbid = prepare_pie_chart_data(stats, 'track.%dmbids')
    mbid_track = prepare_pie_chart_data(stats, 'mbid.%dtracks')
    basic['tracks_with_mbid'] = basic['tracks'] - stats.get('track.0mbids', 0)
    basic['tracks_with_mbid_percent'] = percent(basic['tracks_with_mbid'],
                                                basic['tracks'])
    additions = find_daily_stats(db.session.connection(),
                                 ['track.all', 'mbid.all'])
    lookups = find_lookup_stats(db.session.connection())
    return render_template(
        'stats.html',
        title=title,
        basic=basic,
        track_mbid=track_mbid,
        mbid_track=mbid_track,
        additions_json=json.dumps(prepare_chart_data(additions)),
        lookups_json=json.dumps(prepare_chart_data(lookups)))
예제 #3
0
def test_find_current_stats(conn):
    prepare_database(conn, """
    INSERT INTO stats (name, value, date) VALUES
        ('account.all', 3, '2011-04-25'),
        ('account.all', 3, '2011-04-26'),
        ('account.all', 4, '2011-04-27'),
        ('track.all', 13, '2011-04-25'),
        ('track.all', 13, '2011-04-26'),
        ('track.all', 14, '2011-04-27');
    """)
    stats = find_current_stats(conn)
    assert_equals(4, stats['account.all'])
    assert_equals(14, stats['track.all'])
def test_find_current_stats(conn):
    prepare_database(conn, """
    INSERT INTO stats (name, value, date) VALUES
        ('account.all', 3, '2011-04-25'),
        ('account.all', 3, '2011-04-26'),
        ('account.all', 4, '2011-04-27'),
        ('track.all', 13, '2011-04-25'),
        ('track.all', 13, '2011-04-26'),
        ('track.all', 14, '2011-04-27');
    """)
    stats = find_current_stats(conn)
    assert_equals(4, stats['account.all'])
    assert_equals(14, stats['track.all'])
예제 #5
0
def stats():
    title = 'Statistics'
    stats = find_current_stats(db.session.connection())
    basic = {
        'submissions': stats.get('submission.all', 0),
        'fingerprints': stats.get('fingerprint.all', 0),
        'tracks': stats.get('track.all', 0),
        'mbids': stats.get('mbid.all', 0),
        'contributors': stats.get('account.active', 0),
    }
    track_mbid = prepare_pie_chart_data(stats, 'track.%dmbids')
    mbid_track = prepare_pie_chart_data(stats, 'mbid.%dtracks')
    basic['tracks_with_mbid'] = basic['tracks'] - stats.get('track.0mbids', 0)
    basic['tracks_with_mbid_percent'] = percent(basic['tracks_with_mbid'], basic['tracks'])
    additions = find_daily_stats(db.session.connection(), ['track.all', 'mbid.all'])
    lookups = find_lookup_stats(db.session.connection())
    return render_template('stats.html', title=title, basic=basic,
        track_mbid=track_mbid, mbid_track=mbid_track,
        additions_json=json.dumps(prepare_chart_data(additions)),
        lookups_json=json.dumps(prepare_chart_data(lookups)))