Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ValidEventNames = map[string]bool{ "app:startup": true, "app:shutdown": true, "app:activity": true, "app:display": true, "app:counts": true, "action:magnify": true, "action:settabtheme": true, "action:runaicmd": true, "action:createtab": true, "action:createblock": true, "wsh:run": true, "debug:panic": true, "conn:connect": true, "conn:connecterror": true, }
Functions ¶
This section is empty.
Types ¶
type TEvent ¶
type TEvent struct {
Uuid string `json:"uuid,omitempty" db:"uuid"`
Ts int64 `json:"ts,omitempty" db:"ts"`
TsLocal string `json:"tslocal,omitempty" db:"tslocal"` // iso8601 format (wall clock converted to PT)
Event string `json:"event" db:"event"`
Props TEventProps `json:"props" db:"-"` // Don't scan directly to map
// DB fields
Uploaded bool `json:"-" db:"uploaded"`
// For database scanning
RawProps string `json:"-" db:"props"`
}
func MakeTEvent ¶
func MakeTEvent(event string, props TEventProps) *TEvent
func MakeUntypedTEvent ¶
func (*TEvent) ConvertRawJSON ¶
func (*TEvent) EnsureTimestamps ¶
func (t *TEvent) EnsureTimestamps()
func (*TEvent) UserSetOnceProps ¶
func (t *TEvent) UserSetOnceProps() *TEventUserProps
func (*TEvent) UserSetProps ¶
func (t *TEvent) UserSetProps() *TEventUserProps
type TEventProps ¶
type TEventProps struct {
TEventUserProps `tstype:"-"` // generally don't need to set these since they will be automatically copied over
ActiveMinutes int `json:"activity:activeminutes,omitempty"`
FgMinutes int `json:"activity:fgminutes,omitempty"`
OpenMinutes int `json:"activity:openminutes,omitempty"`
ActionInitiator string `json:"action:initiator,omitempty" tstype:"\"keyboard\" | \"mouse\""`
PanicType string `json:"debug:panictype,omitempty"`
BlockView string `json:"block:view,omitempty"`
AiBackendType string `json:"ai:backendtype,omitempty"`
WshCmd string `json:"wsh:cmd,omitempty"`
WshHadError bool `json:"wsh:haderror,omitempty"`
ConnType string `json:"conn:conntype,omitempty"`
DisplayHeight int `json:"display:height,omitempty"`
DisplayWidth int `json:"display:width,omitempty"`
DisplayDPR float64 `json:"display:dpr,omitempty"`
DisplayCount int `json:"display:count,omitempty"`
DisplayAll interface{} `json:"display:all,omitempty"`
CountBlocks int `json:"count:blocks,omitempty"`
CountTabs int `json:"count:tabs,omitempty"`
CountWindows int `json:"count:windows,omitempty"`
CountWorkspaces int `json:"count:workspaces,omitempty"`
CountSSHConn int `json:"count:sshconn,omitempty"`
CountWSLConn int `json:"count:wslconn,omitempty"`
CountViews map[string]int `json:"count:views,omitempty"`
UserSet *TEventUserProps `json:"$set,omitempty"`
UserSetOnce *TEventUserProps `json:"$set_once,omitempty"`
}
type TEventUserProps ¶
type TEventUserProps struct {
ClientArch string `json:"client:arch,omitempty"`
ClientVersion string `json:"client:version,omitempty"`
ClientInitialVersion string `json:"client:initial_version,omitempty"`
ClientBuildTime string `json:"client:buildtime,omitempty"`
ClientOSRelease string `json:"client:osrelease,omitempty"`
ClientIsDev bool `json:"client:isdev,omitempty"`
AutoUpdateChannel string `json:"autoupdate:channel,omitempty"`
AutoUpdateEnabled bool `json:"autoupdate:enabled,omitempty"`
LocCountryCode string `json:"loc:countrycode,omitempty"`
LocRegionCode string `json:"loc:regioncode,omitempty"`
}
Click to show internal directories.
Click to hide internal directories.