| OLD | NEW |
| 1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
| 2 <!-- | 2 <!-- |
| 3 Copyright 2016 The Chromium Authors. All rights reserved. | 3 Copyright 2016 The Chromium Authors. All rights reserved. |
| 4 Use of this source code is governed by a BSD-style license that can be | 4 Use of this source code is governed by a BSD-style license that can be |
| 5 found in the LICENSE file. | 5 found in the LICENSE file. |
| 6 --> | 6 --> |
| 7 | 7 |
| 8 <link rel="import" | 8 <link rel="import" |
| 9 href="/tracing/extras/chrome/chrome_user_friendly_category_driver.html"> | 9 href="/tracing/extras/chrome/chrome_user_friendly_category_driver.html"> |
| 10 <link rel="import" href="/tracing/metrics/metric_registry.html"> | 10 <link rel="import" href="/tracing/metrics/metric_registry.html"> |
| (...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 87 * @param {!tr.model.Model} model | 87 * @param {!tr.model.Model} model |
| 88 * @param {!Object=} opt_options | 88 * @param {!Object=} opt_options |
| 89 */ | 89 */ |
| 90 function longTasksMetric(values, model, opt_options) { | 90 function longTasksMetric(values, model, opt_options) { |
| 91 var rangeOfInterest = opt_options ? opt_options.rangeOfInterest : undefined; | 91 var rangeOfInterest = opt_options ? opt_options.rangeOfInterest : undefined; |
| 92 var longTaskNumeric = LONG_TASK_NUMERIC_BUILDER.build(); | 92 var longTaskNumeric = LONG_TASK_NUMERIC_BUILDER.build(); |
| 93 var slices = new tr.model.EventSet(); | 93 var slices = new tr.model.EventSet(); |
| 94 iterateRendererMainThreads(model, function(thread) { | 94 iterateRendererMainThreads(model, function(thread) { |
| 95 iterateLongTopLevelTasksOnThreadInRange( | 95 iterateLongTopLevelTasksOnThreadInRange( |
| 96 thread, rangeOfInterest, function(task) { | 96 thread, rangeOfInterest, function(task) { |
| 97 longTaskNumeric.add(task.duration, | 97 longTaskNumeric.add(task.duration, tr.v.d.DiagnosticMap.fromObject({ |
| 98 new tr.v.d.DiagnosticMap({ | |
| 99 relatedEvents: new tr.v.d.RelatedEventSet([task])})); | 98 relatedEvents: new tr.v.d.RelatedEventSet([task])})); |
| 100 slices.push(task); | 99 slices.push(task); |
| 101 slices.addEventSet(task.descendentSlices); | 100 slices.addEventSet(task.descendentSlices); |
| 102 }); | 101 }); |
| 103 }); | 102 }); |
| 104 var options = {description: 'durations of long tasks'}; | 103 var options = {description: 'durations of long tasks'}; |
| 105 var longTaskValue = new tr.v.NumericValue( | 104 var longTaskValue = new tr.v.NumericValue( |
| 106 'long tasks', longTaskNumeric, options); | 105 'long tasks', longTaskNumeric, options); |
| 107 values.addValue(longTaskValue); | 106 values.addValue(longTaskValue); |
| 108 var composition = tr.v.d.Composition.buildFromEvents( | 107 var composition = tr.v.d.Composition.buildFromEvents( |
| 109 values, 'long tasks ', slices, SLICE_NUMERIC_BUILDER, | 108 values, 'long tasks ', slices, SLICE_NUMERIC_BUILDER, |
| 110 e => (model.getUserFriendlyCategoryFromEvent(e) || 'unknown')); | 109 e => (model.getUserFriendlyCategoryFromEvent(e) || 'unknown')); |
| 111 composition.colorScheme = | 110 composition.colorScheme = |
| 112 tr.v.d.COLOR_SCHEME_CHROME_USER_FRIENDLY_CATEGORY_DRIVER; | 111 tr.v.d.COLOR_SCHEME_CHROME_USER_FRIENDLY_CATEGORY_DRIVER; |
| 113 longTaskValue.diagnostics.add('category', composition); | 112 longTaskValue.diagnostics.set('category', composition); |
| 114 } | 113 } |
| 115 | 114 |
| 116 tr.metrics.MetricRegistry.register(longTasksMetric, { | 115 tr.metrics.MetricRegistry.register(longTasksMetric, { |
| 117 supportsRangeOfInterest: true | 116 supportsRangeOfInterest: true |
| 118 }); | 117 }); |
| 119 | 118 |
| 120 return { | 119 return { |
| 121 longTasksMetric: longTasksMetric, | 120 longTasksMetric: longTasksMetric, |
| 122 iterateLongTopLevelTasksOnThreadInRange: | 121 iterateLongTopLevelTasksOnThreadInRange: |
| 123 iterateLongTopLevelTasksOnThreadInRange, | 122 iterateLongTopLevelTasksOnThreadInRange, |
| 124 iterateRendererMainThreads: iterateRendererMainThreads, | 123 iterateRendererMainThreads: iterateRendererMainThreads, |
| 125 LONG_TASK_MS: LONG_TASK_MS, | 124 LONG_TASK_MS: LONG_TASK_MS, |
| 126 LONGEST_TASK_MS: LONGEST_TASK_MS | 125 LONGEST_TASK_MS: LONGEST_TASK_MS |
| 127 }; | 126 }; |
| 128 }); | 127 }); |
| 129 </script> | 128 </script> |
| OLD | NEW |