Commit cf2b2078 authored by John McCutchan's avatar John McCutchan Committed by GitHub

Send reload / restart time to frame to analytics (#5335)

parent 6b1597dc
...@@ -473,6 +473,7 @@ class HotRunner extends ResidentRunner { ...@@ -473,6 +473,7 @@ class HotRunner extends ResidentRunner {
printStatus('Restart time: ' printStatus('Restart time: '
'${getElapsedAsMilliseconds(firstFrameTimer.elapsed)}'); '${getElapsedAsMilliseconds(firstFrameTimer.elapsed)}');
flutterUsage.sendEvent('hot', 'restart'); flutterUsage.sendEvent('hot', 'restart');
flutterUsage.sendTiming('hot', 'restart', firstFrameTimer.elapsed);
} }
/// Returns [true] if the reload was successful. /// Returns [true] if the reload was successful.
...@@ -537,6 +538,7 @@ class HotRunner extends ResidentRunner { ...@@ -537,6 +538,7 @@ class HotRunner extends ResidentRunner {
await firstFrameTimer.firstFrame(); await firstFrameTimer.firstFrame();
printStatus('Hot reload time: ' printStatus('Hot reload time: '
'${getElapsedAsMilliseconds(firstFrameTimer.elapsed)}'); '${getElapsedAsMilliseconds(firstFrameTimer.elapsed)}');
flutterUsage.sendTiming('hot', 'reload', firstFrameTimer.elapsed);
return true; return true;
} }
......
...@@ -70,6 +70,10 @@ class Usage { ...@@ -70,6 +70,10 @@ class Usage {
_analytics.sendEvent(category, parameter); _analytics.sendEvent(category, parameter);
} }
void sendTiming(String category, String variableName, Duration duration) {
_analytics.sendTiming(variableName, duration.inMilliseconds, category: category);
}
UsageTimer startTimer(String event) { UsageTimer startTimer(String event) {
if (suppressAnalytics) if (suppressAnalytics)
return new _MockUsageTimer(); return new _MockUsageTimer();
......
...@@ -138,6 +138,9 @@ class MockUsage implements Usage { ...@@ -138,6 +138,9 @@ class MockUsage implements Usage {
@override @override
void sendEvent(String category, String parameter) { } void sendEvent(String category, String parameter) { }
@override
void sendTiming(String category, String variableName, Duration duration) { }
@override @override
UsageTimer startTimer(String event) => new _MockUsageTimer(event); UsageTimer startTimer(String event) => new _MockUsageTimer(event);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment