From 6b6037f73513c4f3d34ed83728590ef01c9c8c6b Mon Sep 17 00:00:00 2001 From: idanoo Date: Mon, 13 Feb 2023 08:47:08 +1300 Subject: [PATCH] Testing --- internal/gomastodonstats/metrics.go | 13 +++---------- internal/gomastodonstats/postgresql.go | 21 +++++++++++++++++++++ 2 files changed, 24 insertions(+), 10 deletions(-) diff --git a/internal/gomastodonstats/metrics.go b/internal/gomastodonstats/metrics.go index bb13521..a17a22a 100644 --- a/internal/gomastodonstats/metrics.go +++ b/internal/gomastodonstats/metrics.go @@ -162,22 +162,15 @@ func getLastMetric(serviceName string) int { func getLastWeekMetric(serviceName string) int { monday := getStartofDayMonday() - log.Printf( - "SELECT metric_value FROM %s WHERE metric_name = '%s' AND service = '%s' AND metric_time = '%s' LIMIT 1", - POSTGRESQL_STATS_TABLE, - METRICNAME_USERCOUNT, - serviceName, - monday, - ) - val, err := runIntQuery( + val, err := runIntQueryWithTime( POSTGRESQL_STATS_DB, fmt.Sprintf( - "SELECT metric_value FROM %s WHERE metric_name = '%s' AND service = '%s' AND metric_time = '%s' LIMIT 1", + "SELECT metric_value FROM %s WHERE metric_name = '%s' AND service = '%s' AND metric_time = '$1' LIMIT 1", POSTGRESQL_STATS_TABLE, METRICNAME_USERCOUNT, serviceName, - monday, ), + monday, ) if err != nil { diff --git a/internal/gomastodonstats/postgresql.go b/internal/gomastodonstats/postgresql.go index 18f6f1a..35a0817 100644 --- a/internal/gomastodonstats/postgresql.go +++ b/internal/gomastodonstats/postgresql.go @@ -3,6 +3,7 @@ package gomastodonstats import ( "database/sql" "fmt" + "time" _ "github.com/lib/pq" ) @@ -57,3 +58,23 @@ func runIntQuery(schema string, q string) (int, error) { return res, err } + +func runIntQueryWithTime(schema string, q string, t time.Time) (int, error) { + var res int + db, err := getConnection(schema) + if err != nil { + return res, err + } + + rows, err := db.Query(q, t) + if err != nil { + return res, err + } + defer rows.Close() + + for rows.Next() { + rows.Scan(&res) + } + + return res, err +}