* feat(backend): handlers for mobile messages * feat(backend): new service template * feat(backend): save mobile session start and send batches to kafka * feat(backend): added mobile support to sink, ender and storage * helm(videostorage): added helm chart for a new service videostorage * fix(backend): added pointer to streing for userBrowser (because it's null for mobile sessions) * feat(backend): added MsgIOSBatchMeta handler to message iterator's logic * feat(backend): added ios ts parser to ender * feat(backend): enabled producing batch of messages to queue * feat(backend): removed iosstart from mob files * feat(backend): added new ios message types * feat(backend): added iosStart and iosEnd * fix(backend): fixed log issue * feat(backend): send tar.gz archives to special queue topic * feat(backend): read raw archives from kafka * fix(backend): added missing file * fix(backend): removed the second file reading * fix(backend): fixed wrong queue topic name * fix(backend): fixed mobile trigger topic name * feat(backend): added tar.gz extractor and iOSSessionEnd handler * feat(backend): debug logs on message uploading * fix(backend): added raw-images topic consumption * feat(backend): now sink send iosSessionEnd to video-storage * feat(backend): added dir creator for new sessions * feat(backend): added correct command to execute * feat(backend): added overwrite option * feat(backend): added s3 uploader for video session replays * feat(backend): new consumer group for mobile sessions * feat(backend): debug logs for uploader * feat(backend): removed unused log * feat(backend): fixed s3 key for video replays * feat(backend): removed debug code * feat(backend): fixed video-storage message filter * fix(backend): added mobileSessionEnd to SessionEnd converter * feat(backend): added first version if db support for mobile events * fix(backend): added swipe events to mob file * feat(backend): added swipe event to pg * feat(backend): split logic into 2 services: image-storage and video-storage * feat(backend): added helm chart for image-storage service * fix(backend): fixed table name for mobile taps * feat(backend): added metadata handler for mobile message parser + fix message filters * feat(backend): added iosRawTopic to DB message consumer * fix(backend): removed value from mobile inputs * feat(backend): removed debug log from iterator * feat(backend): added new apple devices to iOS device parser * fix(backend): added real projectID instead of 0 * feat(backend): extended a list of simulators for device detector * feat(backend): updated networkCall mobile message * fix(backend): added new way to define is network call successed or not * feat(backend): added timezone support for mobile start request * feat(backend): added 2 mobile events Input and Click to mob file * feat(backend): refactored image storage * feat(backend): video storage with 2 workers * feat(backend): added project's platform support * feat(backend): added memory size field for mobile start request * feat(backend): changed video preset for ultrafast * feat(backend): added debug log to http /late handler * feat(backend): added debug log to db service for iosCrash messages * feat(backend): added tapRage event handler to heuristics * feat(backend): changed table and field names for ios crashes * feat(backend): added payload for tapRage events * feat(backend): added TapRage events insert to DB * feat(backend): added fps value to /mobile/start response * feat(backend): added image quality parameter to /mobile/start response * feat(backend): added ScreenLeave handler * feat(backend): removed screenEnter and screenLeave events, added new viewComponent event --------- Co-authored-by: rjshrjndrn <rjshrjndrn@gmail.com>
169 lines
3.5 KiB
Ruby
169 lines
3.5 KiB
Ruby
message 90, 'IOSSessionStart', :replayer => false do
|
|
uint 'Timestamp'
|
|
uint 'ProjectID'
|
|
string 'TrackerVersion'
|
|
string 'RevID'
|
|
string 'UserUUID'
|
|
string 'UserOS'
|
|
string 'UserOSVersion'
|
|
string 'UserDevice'
|
|
string 'UserDeviceType'
|
|
string 'UserCountry'
|
|
end
|
|
|
|
message 91, 'IOSSessionEnd' do
|
|
uint 'Timestamp'
|
|
end
|
|
|
|
message 92, 'IOSMetadata' do
|
|
uint 'Timestamp'
|
|
uint 'Length'
|
|
string 'Key'
|
|
string 'Value'
|
|
end
|
|
|
|
message 93, 'IOSCustomEvent', :replayer => true do
|
|
uint 'Timestamp'
|
|
uint 'Length'
|
|
string 'Name'
|
|
string 'Payload'
|
|
end
|
|
|
|
message 94, 'IOSUserID' do
|
|
uint 'Timestamp'
|
|
uint 'Length'
|
|
string 'Value'
|
|
end
|
|
|
|
message 95, 'IOSUserAnonymousID' do
|
|
uint 'Timestamp'
|
|
uint 'Length'
|
|
string 'Value'
|
|
end
|
|
|
|
message 96, 'IOSScreenChanges', :replayer => true do
|
|
uint 'Timestamp'
|
|
uint 'Length'
|
|
uint 'X'
|
|
uint 'Y'
|
|
uint 'Width'
|
|
uint 'Height'
|
|
end
|
|
|
|
message 97, 'IOSCrash' do
|
|
uint 'Timestamp'
|
|
uint 'Length'
|
|
string 'Name'
|
|
string 'Reason'
|
|
string 'Stacktrace'
|
|
end
|
|
|
|
message 98, 'IOSViewComponentEvent' do
|
|
uint 'Timestamp'
|
|
uint 'Length'
|
|
string 'ScreenName'
|
|
string 'ViewName'
|
|
boolean 'Visible'
|
|
end
|
|
|
|
message 100, 'IOSClickEvent', :replayer => true do
|
|
uint 'Timestamp'
|
|
uint 'Length'
|
|
string 'Label'
|
|
uint 'X'
|
|
uint 'Y'
|
|
end
|
|
|
|
message 101, 'IOSInputEvent', :replayer => true do
|
|
uint 'Timestamp'
|
|
uint 'Length'
|
|
string 'Value'
|
|
boolean 'ValueMasked'
|
|
string 'Label'
|
|
end
|
|
|
|
=begin
|
|
Name/Value may be :
|
|
"physicalMemory": Total memory in bytes
|
|
"processorCount": Total processors in device
|
|
?"activeProcessorCount": Number of currently used processors
|
|
"systemUptime": Elapsed time (in seconds) since last boot
|
|
?"isLowPowerModeEnabled": Possible values (1 or 0)
|
|
2/3!"thermalState": Possible values (0:nominal 1:fair 2:serious 3:critical)
|
|
!"batteryLevel": Possible values (0 .. 100)
|
|
"batteryState": Possible values (0:unknown 1:unplugged 2:charging 3:full)
|
|
"orientation": Possible values (0unknown 1:portrait 2:portraitUpsideDown 3:landscapeLeft 4:landscapeRight 5:faceUp 6:faceDown)
|
|
"mainThreadCPU": Possible values (0 .. 100)
|
|
"memoryUsage": Used memory in bytes
|
|
=end
|
|
message 102, 'IOSPerformanceEvent', :replayer => true do
|
|
uint 'Timestamp'
|
|
uint 'Length'
|
|
string 'Name'
|
|
uint 'Value'
|
|
end
|
|
|
|
message 103, 'IOSLog', :replayer => true do
|
|
uint 'Timestamp'
|
|
uint 'Length'
|
|
string 'Severity' # Possible values ("info", "error")
|
|
string 'Content'
|
|
end
|
|
|
|
message 104, 'IOSInternalError' do
|
|
uint 'Timestamp'
|
|
uint 'Length'
|
|
string 'Content'
|
|
end
|
|
|
|
message 105, 'IOSNetworkCall', :replayer => true do
|
|
uint 'Timestamp'
|
|
uint 'Length'
|
|
string 'Type'
|
|
string 'Method'
|
|
string 'URL'
|
|
string 'Request'
|
|
string 'Response'
|
|
uint 'Status'
|
|
uint 'Duration'
|
|
end
|
|
|
|
message 106, 'IOSSwipeEvent', :replayer => true do
|
|
uint 'Timestamp'
|
|
uint 'Length'
|
|
string 'Label'
|
|
uint 'X'
|
|
uint 'Y'
|
|
string 'Direction'
|
|
end
|
|
|
|
message 107, 'IOSBatchMeta', :replayer => false do
|
|
uint 'Timestamp'
|
|
uint 'Length'
|
|
uint 'FirstIndex'
|
|
end
|
|
|
|
message 110, 'IOSPerformanceAggregated', :swift => false do
|
|
uint 'TimestampStart'
|
|
uint 'TimestampEnd'
|
|
uint 'MinFPS'
|
|
uint 'AvgFPS'
|
|
uint 'MaxFPS'
|
|
uint 'MinCPU'
|
|
uint 'AvgCPU'
|
|
uint 'MaxCPU'
|
|
uint 'MinMemory'
|
|
uint 'AvgMemory'
|
|
uint 'MaxMemory'
|
|
uint 'MinBattery'
|
|
uint 'AvgBattery'
|
|
uint 'MaxBattery'
|
|
end
|
|
|
|
message 111, 'IOSIssueEvent' do
|
|
uint 'Timestamp'
|
|
string 'Type'
|
|
string 'ContextString'
|
|
string 'Context'
|
|
string 'Payload'
|
|
end
|