zoukankan      html  css  js  c++  java
  • python SQLAlchemy 查询慢sql

    1.config文件添加如下配置

    FLASKY_DB_QUERY_TIMEOUT = 0.1  # 设置sql执行超时时间 0.1s
    SQLALCHEMY_RECORD_QUERIES = True  # 启用慢查询记录功能

    2.public文件添加如下代码,可将 打印的语句个性化输出

    from flask_sqlalchemy import SQLAlchemy,get_debug_queries
    
    @app.after_request
    def after_request(response):
        for query in get_debug_queries():
            print(query.statement,query.duration)
            if query.duration >= app.config['FLASKY_DB_QUERY_TIMEOUT']:
                 # query.statement:查询的sql
                 # query.duration: 耗时
                 # 打印超时sql和时间
                 print('----慢sql-----	
    sql:	
     {sql} 	
    耗时:{duration}'.format(sql=query.statement,duration=query.duration))
        return response

    3、完整的 public文件代码如下:

    from flask import Flask
    from flask_sqlalchemy import SQLAlchemy,get_debug_queries
    import config
    
    app = Flask(__name__)
    app.config.from_object(config)
    db = SQLAlchemy(app)
    
    @app.after_request
    def after_request(response):
        for query in get_debug_queries():
            if query.duration >= app.config['FLASKY_DB_QUERY_TIMEOUT']:
                # query.statement:查询的sql
                # query.duration: 耗时
                # 打印超时sql和时间
                print('----慢sql-----	
    sql:	
     {sql} 
    	耗时:{duration}'.format(sql=query.statement,duration=query.duration)
        return response
  • 相关阅读:
    【福利】idea最新激活码,绝对可用
    最好用的录屏工具Bandicam (班迪录屏)
    markdown改变字体、颜色和大小
    idea 2020最新破解教程(可激活至2089年)
    解决电脑桌面图标变白消失
    常见排序
    算法
    uWSGI、WSGI和uwsgi
    RabbitMQ
    flask请求和应用上下文
  • 原文地址:https://www.cnblogs.com/cherylgi/p/14050263.html
Copyright © 2011-2022 走看看