feat(backend): added pg limits for some columns

This commit is contained in:
Alexander Zavorotynskiy 2022-12-30 10:52:15 +01:00
parent e96f1fce0f
commit 22fac6d5ea
4 changed files with 14 additions and 13 deletions

View file

@ -120,7 +120,7 @@ func (conn *Conn) initBulks(metrics *monitoring.Metrics) {
conn.requests, err = NewBulk(conn.c, metrics,
"events_common.requests",
"(session_id, timestamp, seq_index, url, duration, success)",
"($%d, $%d, $%d, left($%d, 2700), $%d, $%d)",
"($%d, $%d, $%d, LEFT($%d, 8000), $%d, $%d)",
6, 200)
if err != nil {
log.Fatalf("can't create requests bulk: %s", err)
@ -128,7 +128,7 @@ func (conn *Conn) initBulks(metrics *monitoring.Metrics) {
conn.customEvents, err = NewBulk(conn.c, metrics,
"events_common.customs",
"(session_id, timestamp, seq_index, name, payload)",
"($%d, $%d, $%d, left($%d, 2700), $%d)",
"($%d, $%d, $%d, LEFT($%d, 2000), $%d)",
5, 200)
if err != nil {
log.Fatalf("can't create customEvents bulk: %s", err)
@ -138,7 +138,8 @@ func (conn *Conn) initBulks(metrics *monitoring.Metrics) {
"(session_id, message_id, timestamp, referrer, base_referrer, host, path, query, dom_content_loaded_time, "+
"load_time, response_end, first_paint_time, first_contentful_paint_time, speed_index, visually_complete, "+
"time_to_interactive, response_time, dom_building_time)",
"($%d, $%d, $%d, $%d, $%d, $%d, $%d, $%d, NULLIF($%d, 0), NULLIF($%d, 0), NULLIF($%d, 0), NULLIF($%d, 0),"+
"($%d, $%d, $%d, LEFT($%d, 8000), LEFT($%d, 8000), LEFT($%d, 300), LEFT($%d, 2000), LEFT($%d, 8000), "+
"NULLIF($%d, 0), NULLIF($%d, 0), NULLIF($%d, 0), NULLIF($%d, 0),"+
" NULLIF($%d, 0), NULLIF($%d, 0), NULLIF($%d, 0), NULLIF($%d, 0), NULLIF($%d, 0), NULLIF($%d, 0))",
18, 200)
if err != nil {
@ -147,7 +148,7 @@ func (conn *Conn) initBulks(metrics *monitoring.Metrics) {
conn.webInputEvents, err = NewBulk(conn.c, metrics,
"events.inputs",
"(session_id, message_id, timestamp, value, label)",
"($%d, $%d, $%d, $%d, NULLIF($%d,''))",
"($%d, $%d, $%d, LEFT($%d, 2000), NULLIF(LEFT($%d, 2000),''))",
5, 200)
if err != nil {
log.Fatalf("can't create webPageEvents bulk: %s", err)
@ -155,7 +156,7 @@ func (conn *Conn) initBulks(metrics *monitoring.Metrics) {
conn.webGraphQL, err = NewBulk(conn.c, metrics,
"events.graphql",
"(session_id, timestamp, message_id, name, request_body, response_body)",
"($%d, $%d, $%d, left($%d, 2700), $%d, $%d)",
"($%d, $%d, $%d, LEFT($%d, 2000), $%d, $%d)",
6, 200)
if err != nil {
log.Fatalf("can't create webPageEvents bulk: %s", err)
@ -203,7 +204,7 @@ func (conn *Conn) initBulks(metrics *monitoring.Metrics) {
conn.webCustomEvents, err = NewBulk(conn.c, metrics,
"events_common.customs",
"(session_id, seq_index, timestamp, name, payload, level)",
"($%d, $%d, $%d, left($%d, 2700), $%d, $%d)",
"($%d, $%d, $%d, LEFT($%d, 2000), $%d, $%d)",
6, 200)
if err != nil {
log.Fatalf("can't create webCustomEvents bulk: %s", err)
@ -211,7 +212,7 @@ func (conn *Conn) initBulks(metrics *monitoring.Metrics) {
conn.webClickEvents, err = NewBulk(conn.c, metrics,
"events.clicks",
"(session_id, message_id, timestamp, label, selector, url, path)",
"($%d, $%d, $%d, NULLIF($%d, ''), $%d, $%d, $%d)",
"($%d, $%d, $%d, NULLIF(LEFT($%d, 2000), ''), LEFT($%d, 8000), LEFT($%d, 2000), LEFT($%d, 2000))",
7, 200)
if err != nil {
log.Fatalf("can't create webClickEvents bulk: %s", err)
@ -219,7 +220,7 @@ func (conn *Conn) initBulks(metrics *monitoring.Metrics) {
conn.webNetworkRequest, err = NewBulk(conn.c, metrics,
"events_common.requests",
"(session_id, timestamp, seq_index, url, host, path, query, request_body, response_body, status_code, method, duration, success)",
"($%d, $%d, $%d, left($%d, 2700), $%d, $%d, $%d, $%d, $%d, $%d::smallint, NULLIF($%d, '')::http_method, $%d, $%d)",
"($%d, $%d, $%d, LEFT($%d, 8000), LEFT($%d, 300), LEFT($%d, 2000), LEFT($%d, 8000), $%d, $%d, $%d::smallint, NULLIF($%d, '')::http_method, $%d, $%d)",
13, 200)
if err != nil {
log.Fatalf("can't create webNetworkRequest bulk: %s", err)

View file

@ -37,7 +37,7 @@ func (conn *Conn) InsertSessionStart(sessionID uint64, s *types.Session) error {
$11, $12,
$13,
NULLIF($14, ''), NULLIF($15, ''), NULLIF($16, ''), NULLIF($17, 0), NULLIF($18, 0::bigint),
NULLIF($19, '')
NULLIF(LEFT($19, 8000), '')
)`,
sessionID, s.ProjectID, s.Timestamp,
s.UserUUID, s.UserDevice, s.UserDeviceType, s.UserCountry,
@ -119,7 +119,7 @@ func (conn *Conn) InsertCustomEvent(sessionID uint64, timestamp uint64, index ui
func (conn *Conn) InsertUserID(sessionID uint64, userID string) error {
sqlRequest := `
UPDATE sessions SET user_id = $1
UPDATE sessions SET user_id = LEFT($1, 8000)
WHERE session_id = $2`
conn.batchQueue(sessionID, sqlRequest, userID, sessionID)
@ -141,7 +141,7 @@ func (conn *Conn) InsertUserAnonymousID(sessionID uint64, userAnonymousID string
func (conn *Conn) InsertMetadata(sessionID uint64, keyNo uint, value string) error {
sqlRequest := `
UPDATE sessions SET metadata_%v = $1
UPDATE sessions SET metadata_%v = LEFT($1, 8000)
WHERE session_id = $2`
return conn.c.Exec(fmt.Sprintf(sqlRequest, keyNo), value, sessionID)
}

View file

@ -52,7 +52,7 @@ func (conn *Conn) InsertWebStatsResourceEvent(sessionID uint64, e *ResourceEvent
) VALUES (
$1, $2, $3,
$4,
left($5, 2700), $6, $7,
LEFT($5, 8000), LEFT($6, 300), LEFT($7, 2000),
$8, $9,
NULLIF($10, '')::events.resource_method,
NULLIF($11, 0), NULLIF($12, 0), NULLIF($13, 0), NULLIF($14, 0), NULLIF($15, 0)

View file

@ -139,7 +139,7 @@ func (conn *Conn) InsertSessionReferrer(sessionID uint64, referrer string) error
}
return conn.c.Exec(`
UPDATE sessions
SET referrer = $1, base_referrer = $2
SET referrer = LEFT($1, 8000), base_referrer = LEFT($2, 8000)
WHERE session_id = $3 AND referrer IS NULL`,
referrer, url.DiscardURLQuery(referrer), sessionID)
}