mirror of
https://git.mirrors.martin98.com/https://github.com/langgenius/dify.git
synced 2025-08-12 16:08:59 +08:00
fix sql transaction error in statistic API (#1586)
This commit is contained in:
parent
caa330c91f
commit
3c0fbf3a6a
@ -62,16 +62,15 @@ class DailyConversationStatistic(Resource):
|
|||||||
|
|
||||||
sql_query += ' GROUP BY date order by date'
|
sql_query += ' GROUP BY date order by date'
|
||||||
|
|
||||||
with db.engine.begin() as conn:
|
|
||||||
rs = conn.execute(db.text(sql_query), arg_dict)
|
|
||||||
|
|
||||||
response_data = []
|
response_data = []
|
||||||
|
|
||||||
for i in rs:
|
with db.engine.begin() as conn:
|
||||||
response_data.append({
|
rs = conn.execute(db.text(sql_query), arg_dict)
|
||||||
'date': str(i.date),
|
for i in rs:
|
||||||
'conversation_count': i.conversation_count
|
response_data.append({
|
||||||
})
|
'date': str(i.date),
|
||||||
|
'conversation_count': i.conversation_count
|
||||||
|
})
|
||||||
|
|
||||||
return jsonify({
|
return jsonify({
|
||||||
'data': response_data
|
'data': response_data
|
||||||
@ -124,16 +123,15 @@ class DailyTerminalsStatistic(Resource):
|
|||||||
|
|
||||||
sql_query += ' GROUP BY date order by date'
|
sql_query += ' GROUP BY date order by date'
|
||||||
|
|
||||||
with db.engine.begin() as conn:
|
|
||||||
rs = conn.execute(db.text(sql_query), arg_dict)
|
|
||||||
|
|
||||||
response_data = []
|
response_data = []
|
||||||
|
|
||||||
for i in rs:
|
with db.engine.begin() as conn:
|
||||||
response_data.append({
|
rs = conn.execute(db.text(sql_query), arg_dict)
|
||||||
'date': str(i.date),
|
for i in rs:
|
||||||
'terminal_count': i.terminal_count
|
response_data.append({
|
||||||
})
|
'date': str(i.date),
|
||||||
|
'terminal_count': i.terminal_count
|
||||||
|
})
|
||||||
|
|
||||||
return jsonify({
|
return jsonify({
|
||||||
'data': response_data
|
'data': response_data
|
||||||
@ -187,18 +185,17 @@ class DailyTokenCostStatistic(Resource):
|
|||||||
|
|
||||||
sql_query += ' GROUP BY date order by date'
|
sql_query += ' GROUP BY date order by date'
|
||||||
|
|
||||||
with db.engine.begin() as conn:
|
|
||||||
rs = conn.execute(db.text(sql_query), arg_dict)
|
|
||||||
|
|
||||||
response_data = []
|
response_data = []
|
||||||
|
|
||||||
for i in rs:
|
with db.engine.begin() as conn:
|
||||||
response_data.append({
|
rs = conn.execute(db.text(sql_query), arg_dict)
|
||||||
'date': str(i.date),
|
for i in rs:
|
||||||
'token_count': i.token_count,
|
response_data.append({
|
||||||
'total_price': i.total_price,
|
'date': str(i.date),
|
||||||
'currency': 'USD'
|
'token_count': i.token_count,
|
||||||
})
|
'total_price': i.total_price,
|
||||||
|
'currency': 'USD'
|
||||||
|
})
|
||||||
|
|
||||||
return jsonify({
|
return jsonify({
|
||||||
'data': response_data
|
'data': response_data
|
||||||
@ -256,16 +253,15 @@ LEFT JOIN conversations c on c.id=subquery.conversation_id
|
|||||||
GROUP BY date
|
GROUP BY date
|
||||||
ORDER BY date"""
|
ORDER BY date"""
|
||||||
|
|
||||||
|
response_data = []
|
||||||
|
|
||||||
with db.engine.begin() as conn:
|
with db.engine.begin() as conn:
|
||||||
rs = conn.execute(db.text(sql_query), arg_dict)
|
rs = conn.execute(db.text(sql_query), arg_dict)
|
||||||
|
for i in rs:
|
||||||
response_data = []
|
response_data.append({
|
||||||
|
'date': str(i.date),
|
||||||
for i in rs:
|
'interactions': float(i.interactions.quantize(Decimal('0.01')))
|
||||||
response_data.append({
|
})
|
||||||
'date': str(i.date),
|
|
||||||
'interactions': float(i.interactions.quantize(Decimal('0.01')))
|
|
||||||
})
|
|
||||||
|
|
||||||
return jsonify({
|
return jsonify({
|
||||||
'data': response_data
|
'data': response_data
|
||||||
@ -320,20 +316,19 @@ class UserSatisfactionRateStatistic(Resource):
|
|||||||
|
|
||||||
sql_query += ' GROUP BY date order by date'
|
sql_query += ' GROUP BY date order by date'
|
||||||
|
|
||||||
with db.engine.begin() as conn:
|
|
||||||
rs = conn.execute(db.text(sql_query), arg_dict)
|
|
||||||
|
|
||||||
response_data = []
|
response_data = []
|
||||||
|
|
||||||
for i in rs:
|
with db.engine.begin() as conn:
|
||||||
response_data.append({
|
rs = conn.execute(db.text(sql_query), arg_dict)
|
||||||
'date': str(i.date),
|
for i in rs:
|
||||||
'rate': round((i.feedback_count * 1000 / i.message_count) if i.message_count > 0 else 0, 2),
|
response_data.append({
|
||||||
})
|
'date': str(i.date),
|
||||||
|
'rate': round((i.feedback_count * 1000 / i.message_count) if i.message_count > 0 else 0, 2),
|
||||||
|
})
|
||||||
|
|
||||||
return jsonify({
|
return jsonify({
|
||||||
'data': response_data
|
'data': response_data
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
class AverageResponseTimeStatistic(Resource):
|
class AverageResponseTimeStatistic(Resource):
|
||||||
@ -383,16 +378,15 @@ class AverageResponseTimeStatistic(Resource):
|
|||||||
|
|
||||||
sql_query += ' GROUP BY date order by date'
|
sql_query += ' GROUP BY date order by date'
|
||||||
|
|
||||||
with db.engine.begin() as conn:
|
|
||||||
rs = conn.execute(db.text(sql_query), arg_dict)
|
|
||||||
|
|
||||||
response_data = []
|
response_data = []
|
||||||
|
|
||||||
for i in rs:
|
with db.engine.begin() as conn:
|
||||||
response_data.append({
|
rs = conn.execute(db.text(sql_query), arg_dict)
|
||||||
'date': str(i.date),
|
for i in rs:
|
||||||
'latency': round(i.latency * 1000, 4)
|
response_data.append({
|
||||||
})
|
'date': str(i.date),
|
||||||
|
'latency': round(i.latency * 1000, 4)
|
||||||
|
})
|
||||||
|
|
||||||
return jsonify({
|
return jsonify({
|
||||||
'data': response_data
|
'data': response_data
|
||||||
@ -447,16 +441,15 @@ WHERE app_id = :app_id'''
|
|||||||
|
|
||||||
sql_query += ' GROUP BY date order by date'
|
sql_query += ' GROUP BY date order by date'
|
||||||
|
|
||||||
with db.engine.begin() as conn:
|
|
||||||
rs = conn.execute(db.text(sql_query), arg_dict)
|
|
||||||
|
|
||||||
response_data = []
|
response_data = []
|
||||||
|
|
||||||
for i in rs:
|
with db.engine.begin() as conn:
|
||||||
response_data.append({
|
rs = conn.execute(db.text(sql_query), arg_dict)
|
||||||
'date': str(i.date),
|
for i in rs:
|
||||||
'tps': round(i.tokens_per_second, 4)
|
response_data.append({
|
||||||
})
|
'date': str(i.date),
|
||||||
|
'tps': round(i.tokens_per_second, 4)
|
||||||
|
})
|
||||||
|
|
||||||
return jsonify({
|
return jsonify({
|
||||||
'data': response_data
|
'data': response_data
|
||||||
|
Loading…
x
Reference in New Issue
Block a user