feat(backend): insert referrer to sessions table (#1237)
This commit is contained in:
parent
cdb6ab8b60
commit
a0b842f13c
2 changed files with 16 additions and 0 deletions
|
|
@ -3,6 +3,7 @@ package postgres
|
|||
import (
|
||||
"fmt"
|
||||
"log"
|
||||
"openreplay/backend/pkg/url"
|
||||
"strings"
|
||||
|
||||
"openreplay/backend/pkg/db/types"
|
||||
|
|
@ -167,3 +168,15 @@ func (conn *Conn) InsertIssueEvent(sessionID uint64, projectID uint32, e *messag
|
|||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (conn *Conn) InsertReferrer(sessionID uint64, referrer string) error {
|
||||
baseReferrer := url.DiscardURLQuery(referrer)
|
||||
sqlRequest := `
|
||||
UPDATE sessions SET referrer = LEFT($1, 8000), base_referrer = LEFT($2, 8000)
|
||||
WHERE session_id = $3`
|
||||
conn.batchQueue(sessionID, sqlRequest, referrer, baseReferrer, sessionID)
|
||||
|
||||
// Record approximate message size
|
||||
conn.updateBatchSize(sessionID, len(sqlRequest)+len(referrer)+len(baseReferrer)+8)
|
||||
return nil
|
||||
}
|
||||
|
|
|
|||
|
|
@ -49,6 +49,9 @@ func (conn *Conn) InsertWebPageEvent(sessionID uint64, projectID uint32, e *Page
|
|||
e.SpeedIndex, e.VisuallyComplete, e.TimeToInteractive, calcResponseTime(e), calcDomBuildingTime(e)); err != nil {
|
||||
log.Printf("insert web page event in bulk err: %s", err)
|
||||
}
|
||||
if err = conn.InsertReferrer(sessionID, e.Referrer); err != nil {
|
||||
log.Printf("insert session referrer err: %s", err)
|
||||
}
|
||||
// Accumulate session updates and exec inside batch with another sql commands
|
||||
conn.updateSessionEvents(sessionID, 1, 1)
|
||||
// Add new value set to autocomplete bulk
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue