middlewares.py 文件源码

python
阅读 20 收藏 0 点赞 0 评论 0

项目:grical 作者: wikical 项目源码 文件源码
def render_queries(queries, sort):
    """
    Returns a StringIO containing the formatted SQL queries.

    _sort_ is a field to sort by.
    """
    output = StringIO()
    if sort == 'order':
        print >>output, "     time query"
        for query in queries:
            print >>output, " %8s %s" % (query["time"], query["sql"])
        return output

    def sorter(x, y):
        if sort == 'time':
            return cmp(x[1][1], y[1][1])
        elif sort == 'queries':
            return cmp(x[1][0], y[1][0])
        else:
            raise RuntimeError("Unknown sort: %s" % sort)

    print >>output, "  queries     time query"
    results = {}
    for query in queries:
        try:
            result = results[query["sql"]]
            result[0] += 1
            result[1] += Decimal(query["time"])
        except KeyError:
            results[query["sql"]] = [1, Decimal(query["time"])]
    results = sorted(results.iteritems(), cmp=sorter, reverse=True)
    for result in results:
        print >>output, " %8d %8.3f %s" % (result[1][0],
                                           result[1][1],
                                           result[0])
    return output
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号