feat: add support for 1h response chart

This commit is contained in:
Tore Stendal Lønøy
2025-02-05 13:46:00 +01:00
parent ebda6c2c08
commit 4e3241f78c
3 changed files with 9 additions and 2 deletions

View File

@@ -42,8 +42,10 @@ func ResponseTimeChart(c *fiber.Ctx) error {
from = time.Now().Truncate(time.Hour).Add(-7 * 24 * time.Hour)
case "24h":
from = time.Now().Truncate(time.Hour).Add(-24 * time.Hour)
case "1h":
from = time.Now().Add(-2 * time.Hour) // Because response time metrics are stored by hour, we have to cheat a little
default:
return c.Status(400).SendString("Durations supported: 30d, 7d, 24h")
return c.Status(400).SendString("Durations supported: 30d, 7d, 24h, 1h")
}
hourlyAverageResponseTime, err := store.Get().GetHourlyAverageResponseTimeByKey(c.Params("key"), from, time.Now())
if err != nil {

View File

@@ -39,6 +39,11 @@ func TestResponseTimeChart(t *testing.T) {
Gzip bool
}
scenarios := []Scenario{
{
Name: "chart-response-time-1h",
Path: "/api/v1/endpoints/core_backend/response-times/1h/chart.svg",
ExpectedCode: http.StatusOK,
},
{
Name: "chart-response-time-24h",
Path: "/api/v1/endpoints/core_backend/response-times/24h/chart.svg",