* adding gear dump
This commit is contained in:
parent
0e01e9cc52
commit
df60a43404
|
|
@ -0,0 +1,59 @@
|
|||
namespace :gear do
|
||||
|
||||
task analyze: :environment do
|
||||
|
||||
successful = {types: {}}
|
||||
|
||||
Diagnostic.where("type = 'GEAR_SELECTION'").each do |diagnostic|
|
||||
|
||||
data = JSON.parse(diagnostic.data)
|
||||
|
||||
os = data["summary"]["os"] # MacOSX or Win32
|
||||
success = data["summary"]["success"] # bool
|
||||
|
||||
if success
|
||||
latency = data["summary"]["score"]["latencyScore"]["latency"]
|
||||
id = data["summary"]["selectedDevice"]["input"]["info"]["id"]
|
||||
displayName = data["summary"]["selectedDevice"]["input"]["info"]["displayName"]
|
||||
type = data["summary"]["selectedDevice"]["input"]["info"]["type"]
|
||||
|
||||
store = successful[:types][type]
|
||||
|
||||
if !store
|
||||
store = {}
|
||||
successful[:types][type] = store
|
||||
end
|
||||
|
||||
deviceData = store[id + ':' + latency.to_i.to_s]
|
||||
|
||||
if !deviceData
|
||||
deviceData = {id: id, displayName: displayName, type: type, latency: latency, count: 0}
|
||||
store[id + ':' + latency.to_i.to_s] = deviceData
|
||||
end
|
||||
|
||||
deviceData[:count] = deviceData[:count] + 1
|
||||
end
|
||||
end
|
||||
|
||||
puts "TYPES:"
|
||||
successful[:types].each do|type, hits|
|
||||
puts "#{type}"
|
||||
end
|
||||
puts ""
|
||||
puts ""
|
||||
|
||||
successful[:types].each do |type, hits|
|
||||
results = hits.sort_by do |id_latency, deviceData|
|
||||
deviceData[:latency]
|
||||
end
|
||||
|
||||
puts "--------------- #{type} -----------------"
|
||||
|
||||
results.each do |result|
|
||||
puts "#{result[1][:latency].to_i.to_s.rjust(2)} #{result[1][:displayName]}"
|
||||
end
|
||||
puts ""
|
||||
puts ""
|
||||
end
|
||||
end
|
||||
end
|
||||
Loading…
Reference in New Issue