feat(backend): added heuristics metric
This commit is contained in:
parent
5aa45d6c2f
commit
9e59d5e1ab
2 changed files with 28 additions and 0 deletions
|
|
@ -8,12 +8,17 @@ import (
|
|||
"openreplay/backend/pkg/handlers/custom"
|
||||
"openreplay/backend/pkg/handlers/web"
|
||||
"openreplay/backend/pkg/messages"
|
||||
"openreplay/backend/pkg/metrics"
|
||||
heuristicsMetrics "openreplay/backend/pkg/metrics/heuristics"
|
||||
"openreplay/backend/pkg/queue"
|
||||
"openreplay/backend/pkg/sessions"
|
||||
"openreplay/backend/pkg/terminator"
|
||||
)
|
||||
|
||||
func main() {
|
||||
m := metrics.New()
|
||||
m.Register(heuristicsMetrics.List())
|
||||
|
||||
log.SetFlags(log.LstdFlags | log.LUTC | log.Llongfile)
|
||||
cfg := config.New()
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,10 @@
|
|||
package heuristics
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"log"
|
||||
"openreplay/backend/pkg/messages"
|
||||
metrics "openreplay/backend/pkg/metrics/heuristics"
|
||||
"time"
|
||||
|
||||
"openreplay/backend/internal/config/heuristics"
|
||||
|
|
@ -35,6 +38,8 @@ func (h *heuristicsImpl) run() {
|
|||
case evt := <-h.events.Events():
|
||||
if err := h.producer.Produce(h.cfg.TopicAnalytics, evt.SessionID(), evt.Encode()); err != nil {
|
||||
log.Printf("can't send new event to queue: %s", err)
|
||||
} else {
|
||||
metrics.IncreaseTotalEvents(messageTypeName(evt))
|
||||
}
|
||||
case <-tick:
|
||||
h.producer.Flush(h.cfg.ProducerTimeout)
|
||||
|
|
@ -62,3 +67,21 @@ func (h *heuristicsImpl) Stop() {
|
|||
h.consumer.Commit()
|
||||
h.consumer.Close()
|
||||
}
|
||||
|
||||
func messageTypeName(msg messages.Message) string {
|
||||
switch msg.TypeID() {
|
||||
case 31:
|
||||
return "PageEvent"
|
||||
case 32:
|
||||
return "InputEvent"
|
||||
case 56:
|
||||
return "PerformanceTrackAggr"
|
||||
case 69:
|
||||
return "MouseClick"
|
||||
case 125:
|
||||
m := msg.(*messages.IssueEvent)
|
||||
return fmt.Sprintf("IssueEvent(%s)", m.Type)
|
||||
default:
|
||||
return "unknown"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue