Skip to content
Snippets Groups Projects
Commit e2a236d7 authored by Tóth Miklós Tibor's avatar Tóth Miklós Tibor :shrug:
Browse files

prom

parent ac52f652
Branches
No related tags found
No related merge requests found
...@@ -2,6 +2,7 @@ package aggregator ...@@ -2,6 +2,7 @@ package aggregator
import ( import (
"flag" "flag"
"git.sch.bme.hu/mikewashere/matrix-backend/metrics"
"time" "time"
) )
...@@ -28,6 +29,7 @@ func init() { ...@@ -28,6 +29,7 @@ func init() {
} }
func Vote(UserID, Choice string) { func Vote(UserID, Choice string) {
go metrics.Votes.Inc()
t := getTime() % (bucket * 2) t := getTime() % (bucket * 2)
data[t][UserID] = Choice data[t][UserID] = Choice
} }
...@@ -2,9 +2,12 @@ package aggregator ...@@ -2,9 +2,12 @@ package aggregator
import ( import (
"git.sch.bme.hu/mikewashere/matrix-backend/db" "git.sch.bme.hu/mikewashere/matrix-backend/db"
"git.sch.bme.hu/mikewashere/matrix-backend/metrics"
) )
func GetCurrentChoices() (map[string]map[string]int, error) { func GetCurrentChoices() (map[string]map[string]int, error) {
go metrics.Requests.Inc()
t := getTime() % (bucket * 2) t := getTime() % (bucket * 2)
ret := make(map[string]map[string]int) ret := make(map[string]map[string]int)
......
package db package db
import "errors" import (
"errors"
"git.sch.bme.hu/mikewashere/matrix-backend/metrics"
)
func CreateUser(TeamID string) (*User, error) { func CreateUser(TeamID string) (*User, error) {
t := &Team{ t := &Team{
...@@ -20,6 +23,8 @@ func CreateUser(TeamID string) (*User, error) { ...@@ -20,6 +23,8 @@ func CreateUser(TeamID string) (*User, error) {
return nil, errors.New("internal error") return nil, errors.New("internal error")
} }
go metrics.Users.Inc()
return u, nil return u, nil
} }
......
...@@ -7,5 +7,6 @@ go 1.15 ...@@ -7,5 +7,6 @@ go 1.15
require ( require (
github.com/go-pg/pg/v10 v10.7.5 github.com/go-pg/pg/v10 v10.7.5
github.com/igm/sockjs-go/v3 v3.0.0 github.com/igm/sockjs-go/v3 v3.0.0
github.com/prometheus/client_golang v1.9.0
gitlab.com/MikeTTh/env v0.0.0-20210102155928-2e9be3823cc7 gitlab.com/MikeTTh/env v0.0.0-20210102155928-2e9be3823cc7
) )
This diff is collapsed.
...@@ -4,6 +4,7 @@ import ( ...@@ -4,6 +4,7 @@ import (
"git.sch.bme.hu/mikewashere/matrix-backend/input" "git.sch.bme.hu/mikewashere/matrix-backend/input"
"git.sch.bme.hu/mikewashere/matrix-backend/output" "git.sch.bme.hu/mikewashere/matrix-backend/output"
"github.com/igm/sockjs-go/v3/sockjs" "github.com/igm/sockjs-go/v3/sockjs"
"github.com/prometheus/client_golang/prometheus/promhttp"
"log" "log"
"net/http" "net/http"
) )
...@@ -12,7 +13,11 @@ func main() { ...@@ -12,7 +13,11 @@ func main() {
mux := http.NewServeMux() mux := http.NewServeMux()
opts := sockjs.DefaultOptions opts := sockjs.DefaultOptions
opts.RawWebsocket = true opts.RawWebsocket = true
mux.Handle("/in/", sockjs.NewHandler("/in", opts, input.InputHandler)) sockjsHandler := sockjs.NewHandler("/in", opts, input.InputHandler)
mux.Handle("/in", sockjsHandler)
mux.Handle("/in/", sockjsHandler)
mux.Handle("/metrics", promhttp.Handler())
mux.HandleFunc("/out", output.OutputHandler)
mux.HandleFunc("/out/", output.OutputHandler) mux.HandleFunc("/out/", output.OutputHandler)
log.Fatal(http.ListenAndServe(":8080", mux)) log.Fatal(http.ListenAndServe(":8080", mux))
} }
package metrics
import (
"github.com/prometheus/client_golang/prometheus"
"github.com/prometheus/client_golang/prometheus/promauto"
)
const namespace = "matrix"
var (
Votes = promauto.NewCounter(prometheus.CounterOpts{
Namespace: namespace,
Name: "votes",
Help: "number of votes received so far",
})
Requests = promauto.NewCounter(prometheus.CounterOpts{
Namespace: namespace,
Name: "requests",
Help: "number of requests received so far",
})
Users = promauto.NewCounter(prometheus.CounterOpts{
Namespace: namespace,
Name: "logins",
Help: "number of logins",
})
)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment