refactor(backend): deleted old unused code
This commit is contained in:
parent
e9e3e21a10
commit
d4b8d3a7f9
4 changed files with 0 additions and 360 deletions
|
|
@ -81,26 +81,6 @@ func (s *saverImpl) handleMessage(msg Message) error {
|
|||
return s.pg.InsertWebInputDuration(m)
|
||||
case *MouseThrashing:
|
||||
return s.pg.InsertMouseThrashing(m)
|
||||
case *IOSSessionStart:
|
||||
return s.pg.InsertIOSSessionStart(m)
|
||||
case *IOSSessionEnd:
|
||||
return s.pg.InsertIOSSessionEnd(m)
|
||||
case *IOSUserID:
|
||||
return s.pg.InsertIOSUserID(m)
|
||||
case *IOSUserAnonymousID:
|
||||
return s.pg.InsertIOSUserAnonymousID(m)
|
||||
case *IOSCustomEvent:
|
||||
return s.pg.InsertIOSCustomEvent(m)
|
||||
case *IOSClickEvent:
|
||||
return s.pg.InsertIOSClickEvent(m)
|
||||
case *IOSInputEvent:
|
||||
return s.pg.InsertIOSInputEvent(m)
|
||||
case *IOSNetworkCall:
|
||||
return s.pg.InsertIOSNetworkCall(m)
|
||||
case *IOSScreenEnter:
|
||||
return s.pg.InsertIOSScreenEnter(m)
|
||||
case *IOSCrash:
|
||||
return s.pg.InsertIOSCrash(m)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
|
|
|||
93
backend/pkg/db/cache/messages-ios.go
vendored
93
backend/pkg/db/cache/messages-ios.go
vendored
|
|
@ -1,93 +0,0 @@
|
|||
package cache
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
. "openreplay/backend/pkg/db/types"
|
||||
. "openreplay/backend/pkg/messages"
|
||||
)
|
||||
|
||||
func (c *PGCache) InsertIOSSessionStart(s *IOSSessionStart) error {
|
||||
sessionID := s.SessionID()
|
||||
if c.Cache.HasSession(sessionID) {
|
||||
return fmt.Errorf("session %d already in cache", sessionID)
|
||||
}
|
||||
newSess := &Session{
|
||||
SessionID: sessionID,
|
||||
Platform: "ios",
|
||||
Timestamp: s.Timestamp,
|
||||
ProjectID: uint32(s.ProjectID),
|
||||
TrackerVersion: s.TrackerVersion,
|
||||
RevID: s.RevID,
|
||||
UserUUID: s.UserUUID,
|
||||
UserOS: s.UserOS,
|
||||
UserOSVersion: s.UserOSVersion,
|
||||
UserDevice: s.UserDevice,
|
||||
UserCountry: s.UserCountry,
|
||||
UserDeviceType: s.UserDeviceType,
|
||||
}
|
||||
c.Cache.SetSession(newSess)
|
||||
if err := c.Conn.InsertSessionStart(sessionID, newSess); err != nil {
|
||||
// don't know why?
|
||||
c.Cache.SetSession(nil)
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (c *PGCache) InsertIOSSessionEnd(e *IOSSessionEnd) error {
|
||||
sessionID := e.SessionID()
|
||||
_, err := c.InsertSessionEnd(sessionID, e.Timestamp)
|
||||
return err
|
||||
}
|
||||
|
||||
func (c *PGCache) InsertIOSScreenEnter(screenEnter *IOSScreenEnter) error {
|
||||
sessionID := screenEnter.SessionID()
|
||||
if err := c.Conn.InsertIOSScreenEnter(screenEnter); err != nil {
|
||||
return err
|
||||
}
|
||||
session, err := c.Cache.GetSession(sessionID)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
session.PagesCount += 1
|
||||
return nil
|
||||
}
|
||||
|
||||
func (c *PGCache) InsertIOSClickEvent(clickEvent *IOSClickEvent) error {
|
||||
sessionID := clickEvent.SessionID()
|
||||
if err := c.Conn.InsertIOSClickEvent(clickEvent); err != nil {
|
||||
return err
|
||||
}
|
||||
session, err := c.Cache.GetSession(sessionID)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
session.EventsCount += 1
|
||||
return nil
|
||||
}
|
||||
|
||||
func (c *PGCache) InsertIOSInputEvent(inputEvent *IOSInputEvent) error {
|
||||
sessionID := inputEvent.SessionID()
|
||||
if err := c.Conn.InsertIOSInputEvent(inputEvent); err != nil {
|
||||
return err
|
||||
}
|
||||
session, err := c.Cache.GetSession(sessionID)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
session.EventsCount += 1
|
||||
return nil
|
||||
}
|
||||
|
||||
func (c *PGCache) InsertIOSCrash(crash *IOSCrash) error {
|
||||
sessionID := crash.SessionID()
|
||||
session, err := c.Cache.GetSession(sessionID)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err := c.Conn.InsertIOSCrash(session.ProjectID, crash); err != nil {
|
||||
return err
|
||||
}
|
||||
session.ErrorsCount += 1
|
||||
return nil
|
||||
}
|
||||
|
|
@ -1,187 +0,0 @@
|
|||
package postgres
|
||||
|
||||
import (
|
||||
"openreplay/backend/pkg/hashid"
|
||||
"openreplay/backend/pkg/messages"
|
||||
"openreplay/backend/pkg/url"
|
||||
)
|
||||
|
||||
func (conn *Conn) InsertIOSCustomEvent(e *messages.IOSCustomEvent) error {
|
||||
sessionID := e.SessionID()
|
||||
err := conn.InsertCustomEvent(sessionID, e.Timestamp, truncSqIdx(e.Index), e.Name, e.Payload)
|
||||
if err == nil {
|
||||
conn.insertAutocompleteValue(sessionID, 0, "CUSTOM_IOS", e.Name)
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
||||
func (conn *Conn) InsertIOSUserID(userID *messages.IOSUserID) error {
|
||||
sessionID := userID.SessionID()
|
||||
err := conn.InsertUserID(sessionID, userID.Value)
|
||||
if err == nil {
|
||||
conn.insertAutocompleteValue(sessionID, 0, "USERID_IOS", userID.Value)
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
||||
func (conn *Conn) InsertIOSUserAnonymousID(userAnonymousID *messages.IOSUserAnonymousID) error {
|
||||
sessionID := userAnonymousID.SessionID()
|
||||
err := conn.InsertUserAnonymousID(sessionID, userAnonymousID.Value)
|
||||
if err == nil {
|
||||
conn.insertAutocompleteValue(sessionID, 0, "USERANONYMOUSID_IOS", userAnonymousID.Value)
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
||||
func (conn *Conn) InsertIOSNetworkCall(e *messages.IOSNetworkCall) error {
|
||||
sessionID := e.SessionID()
|
||||
err := conn.InsertRequest(sessionID, e.Timestamp, truncSqIdx(e.Index), e.URL, e.Duration, e.Success)
|
||||
if err == nil {
|
||||
conn.insertAutocompleteValue(sessionID, 0, "REQUEST_IOS", url.DiscardURLQuery(e.URL))
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
||||
func (conn *Conn) InsertIOSScreenEnter(screenEnter *messages.IOSScreenEnter) error {
|
||||
sessionID := screenEnter.SessionID()
|
||||
tx, err := conn.c.Begin()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer tx.rollback()
|
||||
|
||||
if err = tx.exec(`
|
||||
INSERT INTO events_ios.views (
|
||||
session_id, timestamp, seq_index, name
|
||||
) VALUES (
|
||||
$1, $2, $3, $4
|
||||
)`,
|
||||
sessionID, screenEnter.Timestamp, screenEnter.Index, screenEnter.ViewName,
|
||||
); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = tx.exec(`
|
||||
UPDATE sessions SET pages_count = pages_count + 1
|
||||
WHERE session_id = $1`,
|
||||
sessionID,
|
||||
); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = tx.commit(); err != nil {
|
||||
return err
|
||||
}
|
||||
conn.insertAutocompleteValue(sessionID, 0, "VIEW_IOS", screenEnter.ViewName)
|
||||
return nil
|
||||
}
|
||||
|
||||
func (conn *Conn) InsertIOSClickEvent(clickEvent *messages.IOSClickEvent) error {
|
||||
sessionID := clickEvent.SessionID()
|
||||
tx, err := conn.c.Begin()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer tx.rollback()
|
||||
|
||||
if err = tx.exec(`
|
||||
INSERT INTO events_ios.clicks (
|
||||
session_id, timestamp, seq_index, label
|
||||
) VALUES (
|
||||
$1, $2, $3, $4
|
||||
)`,
|
||||
sessionID, clickEvent.Timestamp, clickEvent.Index, clickEvent.Label,
|
||||
); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = tx.exec(`
|
||||
UPDATE sessions SET events_count = events_count + 1
|
||||
WHERE session_id = $1`,
|
||||
sessionID,
|
||||
); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = tx.commit(); err != nil {
|
||||
return err
|
||||
}
|
||||
conn.insertAutocompleteValue(sessionID, 0, "CLICK_IOS", clickEvent.Label)
|
||||
return nil
|
||||
}
|
||||
|
||||
func (conn *Conn) InsertIOSInputEvent(inputEvent *messages.IOSInputEvent) error {
|
||||
sessionID := inputEvent.SessionID()
|
||||
tx, err := conn.c.Begin()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer tx.rollback()
|
||||
|
||||
var value interface{} = inputEvent.Value
|
||||
if inputEvent.ValueMasked {
|
||||
value = nil
|
||||
}
|
||||
|
||||
if err = tx.exec(`
|
||||
INSERT INTO events_ios.inputs (
|
||||
session_id, timestamp, seq_index, label, value
|
||||
) VALUES (
|
||||
$1, $2, $3, $4, $5
|
||||
)`,
|
||||
sessionID, inputEvent.Timestamp, inputEvent.Index, inputEvent.Label, value,
|
||||
); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = tx.exec(`
|
||||
UPDATE sessions SET events_count = events_count + 1
|
||||
WHERE session_id = $1`,
|
||||
sessionID,
|
||||
); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = tx.commit(); err != nil {
|
||||
return err
|
||||
}
|
||||
conn.insertAutocompleteValue(sessionID, 0, "INPUT_IOS", inputEvent.Label)
|
||||
// conn.insertAutocompleteValue(sessionID, "INPUT_VALUE", inputEvent.Label)
|
||||
return nil
|
||||
}
|
||||
|
||||
func (conn *Conn) InsertIOSCrash(projectID uint32, crash *messages.IOSCrash) error {
|
||||
sessionID := crash.SessionID()
|
||||
tx, err := conn.c.Begin()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer tx.rollback()
|
||||
|
||||
crashID := hashid.IOSCrashID(projectID, crash)
|
||||
|
||||
if err = tx.exec(`
|
||||
INSERT INTO crashes_ios (
|
||||
project_id, crash_id, name, reason, stacktrace
|
||||
) (SELECT
|
||||
project_id, $2, $3, $4, $5
|
||||
FROM sessions
|
||||
WHERE session_id = $1
|
||||
)ON CONFLICT DO NOTHING`,
|
||||
sessionID, crashID, crash.Name, crash.Reason, crash.Stacktrace,
|
||||
); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = tx.exec(`
|
||||
INSERT INTO events_ios.crashes (
|
||||
session_id, timestamp, seq_index, crash_id
|
||||
) VALUES (
|
||||
$1, $2, $3, $4
|
||||
)`,
|
||||
sessionID, crash.Timestamp, crash.Index, crashID,
|
||||
); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = tx.exec(`
|
||||
UPDATE sessions SET errors_count = errors_count + 1, issue_score = issue_score + 1000
|
||||
WHERE session_id = $1`,
|
||||
sessionID,
|
||||
); err != nil {
|
||||
return err
|
||||
}
|
||||
return tx.commit()
|
||||
}
|
||||
|
|
@ -1,60 +0,0 @@
|
|||
package postgres
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"encoding/json"
|
||||
"log"
|
||||
"net/http"
|
||||
)
|
||||
|
||||
//go:generate $GOPATH/bin/easytags $GOFILE json
|
||||
|
||||
type TenantNotification struct {
|
||||
TenantId uint32 `db:"tenant_id" json:"tenantId"`
|
||||
Title string `db:"title" json:"title"`
|
||||
Description string `db:"description" json:"description"`
|
||||
ButtonText string `db:"button_text" json:"buttonText"`
|
||||
ButtonUrl string `db:"button_url" json:"buttonUrl"`
|
||||
ImageUrl *string `db:"image_url" json:"imageUrl"`
|
||||
Options map[string]interface{} `db:"options" json:"options"`
|
||||
}
|
||||
|
||||
type Notifications struct {
|
||||
Notifications []*TenantNotification `json:"notifications"`
|
||||
Token string `json:"token"`
|
||||
}
|
||||
|
||||
func (n *Notifications) Send(url string) {
|
||||
n.Token = "nF46JdQqAM5v9KI9lPMpcu8o9xiJGvNNWOGL7TJP"
|
||||
body, err := json.Marshal(n)
|
||||
if err != nil {
|
||||
log.Println(err)
|
||||
return
|
||||
}
|
||||
//log.Println("------------ Sending a new notification")
|
||||
req, err := http.NewRequest("POST", url, bytes.NewBuffer(body))
|
||||
if err != nil {
|
||||
log.Printf("error in POST notifications: %v\n", err)
|
||||
return
|
||||
}
|
||||
//req.Header.Set("X-Custom-Header", "myvalue")
|
||||
req.Header.Set("Content-Type", "application/json")
|
||||
|
||||
client := &http.Client{}
|
||||
resp, err := client.Do(req)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
defer resp.Body.Close()
|
||||
//log.Println("response Status:", resp.Status)
|
||||
//log.Println("response Headers:", resp.Header)
|
||||
//respBody, _ := ioutil.ReadAll(resp.Body)
|
||||
//log.Println("response Body:", string(respBody))
|
||||
}
|
||||
|
||||
func (n TenantNotification) Send(url string) {
|
||||
body := Notifications{
|
||||
Notifications: []*TenantNotification{&n},
|
||||
}
|
||||
body.Send(url)
|
||||
}
|
||||
Loading…
Add table
Reference in a new issue