feat: publish sanitized custom.97 source

This commit is contained in:
cneicy committed 2026-10-27 20:43:39 +08:00
1 parent 8e6ed0317b
commit 86c0276156
1022 files changed
+69903 -19207

No files matched your search

+19
View File
@@ -115,6 +115,25 @@ func GetPerfMetricsSummaryBucketsAll(startTs int64, endTs int64, groups []string
return summaries, err
}
// GetRecentPerfMetricSuccessBuckets reads the latest nonempty hours within
// the supplied history window, independently of the summary's reporting window.
func GetRecentPerfMetricSuccessBuckets(modelName string, startTs int64, endTs int64, groups []string, limit int) ([]PerfMetricSummaryBucket, error) {
if modelName == "" || limit <= 0 || (groups != nil && len(groups) == 0) {
return nil, nil
}
const hourBucket = "bucket_ts - (bucket_ts % 3600)"
query := DB.Model(&PerfMetric{}).
Select("model_name, "+hourBucket+" AS bucket_ts, SUM(request_count) AS request_count, SUM(success_count) AS success_count").
Where("model_name = ? AND bucket_ts >= ? AND bucket_ts <= ? AND request_count > 0", modelName, startTs, endTs)
if groups != nil {
query = query.Where(commonGroupCol+" IN ?", groups)
}
var buckets []PerfMetricSummaryBucket
err := query.Group("model_name, " + hourBucket).
Order("bucket_ts DESC").Limit(limit).Find(&buckets).Error
return buckets, err
}
func DeletePerfMetricsBefore(cutoffTs int64) error {
if cutoffTs <= 0 {
return nil