refactor(ops): 优化运维监控数据仓库层查询逻辑
This commit is contained in:
@@ -818,9 +818,9 @@ SELECT
|
|||||||
COALESCE(COUNT(*), 0) AS error_total,
|
COALESCE(COUNT(*), 0) AS error_total,
|
||||||
COALESCE(COUNT(*) FILTER (WHERE is_business_limited), 0) AS business_limited,
|
COALESCE(COUNT(*) FILTER (WHERE is_business_limited), 0) AS business_limited,
|
||||||
COALESCE(COUNT(*) FILTER (WHERE NOT is_business_limited), 0) AS error_sla,
|
COALESCE(COUNT(*) FILTER (WHERE NOT is_business_limited), 0) AS error_sla,
|
||||||
COALESCE(COUNT(*) FILTER (WHERE error_owner = 'provider' AND NOT is_business_limited AND COALESCE(status_code, 0) NOT IN (429, 529)), 0) AS upstream_excl,
|
COALESCE(COUNT(*) FILTER (WHERE error_owner = 'provider' AND NOT is_business_limited AND COALESCE(upstream_status_code, status_code, 0) NOT IN (429, 529)), 0) AS upstream_excl,
|
||||||
COALESCE(COUNT(*) FILTER (WHERE error_owner = 'provider' AND NOT is_business_limited AND COALESCE(status_code, 0) = 429), 0) AS upstream_429,
|
COALESCE(COUNT(*) FILTER (WHERE error_owner = 'provider' AND NOT is_business_limited AND COALESCE(upstream_status_code, status_code, 0) = 429), 0) AS upstream_429,
|
||||||
COALESCE(COUNT(*) FILTER (WHERE error_owner = 'provider' AND NOT is_business_limited AND COALESCE(status_code, 0) = 529), 0) AS upstream_529
|
COALESCE(COUNT(*) FILTER (WHERE error_owner = 'provider' AND NOT is_business_limited AND COALESCE(upstream_status_code, status_code, 0) = 529), 0) AS upstream_529
|
||||||
FROM ops_error_logs
|
FROM ops_error_logs
|
||||||
` + where
|
` + where
|
||||||
|
|
||||||
|
|||||||
@@ -75,7 +75,7 @@ error_base AS (
|
|||||||
group_id AS group_id,
|
group_id AS group_id,
|
||||||
is_business_limited AS is_business_limited,
|
is_business_limited AS is_business_limited,
|
||||||
error_owner AS error_owner,
|
error_owner AS error_owner,
|
||||||
status_code AS status_code
|
COALESCE(upstream_status_code, status_code) AS status_code
|
||||||
FROM ops_error_logs
|
FROM ops_error_logs
|
||||||
WHERE created_at >= $1 AND created_at < $2
|
WHERE created_at >= $1 AND created_at < $2
|
||||||
),
|
),
|
||||||
@@ -356,4 +356,3 @@ func (r *opsRepository) GetLatestDailyBucketDate(ctx context.Context) (time.Time
|
|||||||
t := value.Time.UTC()
|
t := value.Time.UTC()
|
||||||
return time.Date(t.Year(), t.Month(), t.Day(), 0, 0, 0, 0, time.UTC), true, nil
|
return time.Date(t.Year(), t.Month(), t.Day(), 0, 0, 0, 0, time.UTC), true, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -416,9 +416,9 @@ SELECT
|
|||||||
COUNT(*) AS error_total,
|
COUNT(*) AS error_total,
|
||||||
COUNT(*) FILTER (WHERE is_business_limited) AS business_limited,
|
COUNT(*) FILTER (WHERE is_business_limited) AS business_limited,
|
||||||
COUNT(*) FILTER (WHERE NOT is_business_limited) AS error_sla,
|
COUNT(*) FILTER (WHERE NOT is_business_limited) AS error_sla,
|
||||||
COUNT(*) FILTER (WHERE error_owner = 'provider' AND NOT is_business_limited AND COALESCE(status_code, 0) NOT IN (429, 529)) AS upstream_excl,
|
COUNT(*) FILTER (WHERE error_owner = 'provider' AND NOT is_business_limited AND COALESCE(upstream_status_code, status_code, 0) NOT IN (429, 529)) AS upstream_excl,
|
||||||
COUNT(*) FILTER (WHERE error_owner = 'provider' AND NOT is_business_limited AND COALESCE(status_code, 0) = 429) AS upstream_429,
|
COUNT(*) FILTER (WHERE error_owner = 'provider' AND NOT is_business_limited AND COALESCE(upstream_status_code, status_code, 0) = 429) AS upstream_429,
|
||||||
COUNT(*) FILTER (WHERE error_owner = 'provider' AND NOT is_business_limited AND COALESCE(status_code, 0) = 529) AS upstream_529
|
COUNT(*) FILTER (WHERE error_owner = 'provider' AND NOT is_business_limited AND COALESCE(upstream_status_code, status_code, 0) = 529) AS upstream_529
|
||||||
FROM ops_error_logs
|
FROM ops_error_logs
|
||||||
` + where + `
|
` + where + `
|
||||||
GROUP BY 1
|
GROUP BY 1
|
||||||
|
|||||||
Reference in New Issue
Block a user