| OLD | NEW |
| 1 <!DOCTYPE html><html><head><script src="packages/shadow_dom/shadow_dom.debug.js"
></script> | 1 <!DOCTYPE html><html><head> |
| 2 <script src="packages/custom_element/custom-elements.debug.js"></script> | 2 |
| 3 <script src="packages/browser/interop.js"></script> | 3 |
| 4 <meta charset="utf-8"> |
| 5 <link type="text/css" rel="stylesheet" href="bootstrap_css/css/bootstrap.min.c
ss"> |
| 4 | 6 |
| 5 <title>Dart VM Observatory</title> | 7 <title>Dart VM Observatory</title> |
| 6 <meta charset="utf-8"> | 8 <script type="text/javascript" src="https://www.google.com/jsapi"></script> |
| 7 <link type="text/css" rel="stylesheet" href="bootstrap_css/css/bootstrap.min.c
ss"> | 9 |
| 8 | 10 |
| 9 <script src="index.html_bootstrap.dart.js"></script> | 11 <script src="index.html_bootstrap.dart.js"></script> |
| 10 | 12 |
| 11 </head> | 13 </head> |
| 12 <body><polymer-element name="observatory-element"> | 14 <body><polymer-element name="observatory-element"> |
| 13 | 15 |
| 14 </polymer-element><polymer-element name="breakpoint-list" extends="observatory-e
lement"> | 16 </polymer-element><polymer-element name="breakpoint-list" extends="observatory-e
lement"> |
| 15 <template> | 17 <template> |
| 16 <template if="{{ msg['breakpoints'].isEmpty }}"> | 18 <template if="{{ msg['breakpoints'].isEmpty }}"> |
| 17 <div class="panel panel-warning"> | 19 <div class="panel panel-warning"> |
| 18 <div class="panel-body">No breakpoints</div> | 20 <div class="panel-body">No breakpoints</div> |
| 19 </div> | 21 </div> |
| 20 </template> | 22 </template> |
| 21 <template if="{{ msg['breakpoints'].isNotEmpty }}"> | 23 <template if="{{ msg['breakpoints'].isNotEmpty }}"> |
| 22 <ul class="list-group"> | 24 <ul class="list-group"> |
| 23 <template repeat="{{ bpt in msg['breakpoints'] }}"> | 25 <template repeat="{{ bpt in msg['breakpoints'] }}"> |
| 24 <li class="list-group-item"> | 26 <li class="list-group-item"> |
| 25 {{ bpt }} | 27 {{ bpt }} |
| 26 </li> | 28 </li> |
| 27 </template> | 29 </template> |
| 28 </ul> | 30 </ul> |
| 29 </template> | 31 </template> |
| 30 </template> | 32 </template> |
| 31 | 33 |
| 32 </polymer-element><polymer-element name="service-ref" extends="observatory-eleme
nt"> | 34 </polymer-element><polymer-element name="service-ref" extends="observatory-eleme
nt"> |
| 33 | 35 |
| 34 </polymer-element><polymer-element name="class-ref" extends="service-ref"> | 36 </polymer-element><polymer-element name="class-ref" extends="service-ref"> |
| 35 <template> | 37 <template> |
| 36 <a title="{{ hoverText }}" href="{{ url }}">{{ name }}</a> | 38 <a title="{{ hoverText }}" href="{{ url }}">{{ name }}</a> |
| 37 </template> | 39 </template> |
| 38 | 40 |
| 39 </polymer-element> | 41 </polymer-element> |
| 40 <polymer-element name="error-view" extends="observatory-element"> | 42 <polymer-element name="error-view" extends="observatory-element"> |
| 41 <template> | 43 <template> |
| 42 <div class="row"> | 44 <div class="row"> |
| 43 <div class="col-md-8 col-md-offset-2"> | 45 <div class="col-md-8 col-md-offset-2"> |
| 44 <div class="panel panel-danger"> | 46 <div class="panel panel-danger"> |
| 45 <div class="panel-heading">{{ error['errorType'] }}</div> | 47 <div class="panel-heading">{{ error['errorType'] }}</div> |
| 46 <div class="panel-body"> | 48 <div class="panel-body"> |
| 47 <p>{{ error['text'] }}</p> | 49 <p>{{ error['text'] }}</p> |
| 48 </div> | 50 </div> |
| 49 </div> | 51 </div> |
| 50 </div> | 52 </div> |
| 51 </div> | 53 </div> |
| 52 </template> | 54 </template> |
| 53 | 55 |
| 54 </polymer-element><polymer-element name="field-ref" extends="service-ref"> | 56 </polymer-element><polymer-element name="field-ref" extends="service-ref"> |
| 55 <template> | 57 <template> |
| 56 <div> | 58 <div> |
| 57 <template if="{{ ref['final'] }}"> final </template> | 59 <template if="{{ ref['final'] }}"> final </template> |
| 58 <template if="{{ ref['const'] }}"> const </template> | 60 <template if="{{ ref['const'] }}"> const </template> |
| 59 <template if="{{ (ref['declared_type']['name'] == 'dynamic' && !ref['f
inal'] && !ref['const']) }}"> | 61 <template if="{{ (ref['declared_type']['name'] == 'dynamic' && !ref['f
inal'] && !ref['const']) }}"> |
| 60 var | 62 var |
| 61 </template> | 63 </template> |
| 62 <template if="{{ (ref['declared_type']['name'] != 'dynamic') }}"> | 64 <template if="{{ (ref['declared_type']['name'] != 'dynamic') }}"> |
| 63 <class-ref app="{{ app }}" ref="{{ ref['declared_type'] }}"></class-ref> | 65 <class-ref app="{{ app }}" ref="{{ ref['declared_type'] }}"></class-ref> |
| (...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 149 </table> | 151 </table> |
| 150 </template> | 152 </template> |
| 151 <template if="{{ cls['error'] != null }}"> | 153 <template if="{{ cls['error'] != null }}"> |
| 152 <error-view error_obj="{{ cls['error'] }}"></error-view> | 154 <error-view error_obj="{{ cls['error'] }}"></error-view> |
| 153 </template> | 155 </template> |
| 154 </div> | 156 </div> |
| 155 </div> | 157 </div> |
| 156 </div> | 158 </div> |
| 157 </div> | 159 </div> |
| 158 </template> | 160 </template> |
| 159 | 161 |
| 160 </polymer-element> | 162 </polymer-element> |
| 161 <polymer-element name="code-ref" extends="service-ref"> | 163 <polymer-element name="code-ref" extends="service-ref"> |
| 162 <template> | 164 <template> |
| 163 <a href="{{ url }}">{{ name }}</a> | 165 <a href="{{ url }}">{{ name }}</a> |
| 164 </template> | 166 </template> |
| 165 | 167 |
| 166 </polymer-element><polymer-element name="disassembly-entry" extends="observatory
-element"> | 168 </polymer-element><polymer-element name="disassembly-entry" extends="observatory
-element"> |
| 167 <template> | 169 <template> |
| 168 <div class="row"> | 170 <div class="row"> |
| 169 <div class="col-md-2">{{ instruction.formattedTicks() }}</div> | 171 <div class="col-md-2">{{ instruction.formattedTicks() }}</div> |
| 170 <div class="col-md-2">{{ instruction.formattedAddress() }}</div> | 172 <div class="col-md-2">{{ instruction.formattedAddress() }}</div> |
| 171 <div class="col-md-4"> | 173 <div class="col-md-4"> |
| 172 <code>{{ instruction.machine }} {{ instruction.human }}</code> | 174 <code>{{ instruction.machine }} {{ instruction.human }}</code> |
| 173 </div> | 175 </div> |
| 174 </div> | 176 </div> |
| 175 </template> | 177 </template> |
| 176 | 178 |
| 177 </polymer-element><polymer-element name="code-view" extends="observatory-element
"> | 179 </polymer-element><polymer-element name="code-view" extends="observatory-element
"> |
| 178 <template> | 180 <template> |
| 179 <div class="row"> | 181 <div class="row"> |
| 180 <div class="col-md-8 col-md-offset-2"> | 182 <div class="col-md-8 col-md-offset-2"> |
| 181 <div class="{{ cssPanelClass }}"> | 183 <div class="{{ cssPanelClass }}"> |
| 182 <div class="panel-heading"> | 184 <div class="panel-heading"> |
| 183 <function-ref app="{{ app }}" ref="{{ code.functionRef }}"></function-
ref> | 185 <function-ref app="{{ app }}" ref="{{ code.functionRef }}"></function-
ref> |
| 184 </div> | 186 </div> |
| 185 <div class="panel-body"> | 187 <div class="panel-body"> |
| 186 <div class="row"> | 188 <div class="row"> |
| 187 <div class="col-md-2"><strong>Samples</strong></div> | 189 <div class="col-md-2"><strong>Samples</strong></div> |
| 188 <div class="col-md-2"><strong>Address</strong></div> | 190 <div class="col-md-2"><strong>Address</strong></div> |
| 189 <div><strong>Instruction</strong></div> | 191 <div><strong>Instruction</strong></div> |
| 190 </div> | 192 </div> |
| 191 <template repeat="{{ instruction in code.instructions }}"> | 193 <template repeat="{{ instruction in code.instructions }}"> |
| 192 <disassembly-entry instruction="{{ instruction }}"> | 194 <disassembly-entry instruction="{{ instruction }}"> |
| 193 </disassembly-entry> | 195 </disassembly-entry> |
| 194 </template> | 196 </template> |
| 195 </div> | 197 </div> |
| 196 </div> | 198 </div> |
| 197 </div> | 199 </div> |
| 198 </div> | 200 </div> |
| 199 </template> | 201 </template> |
| 200 | 202 |
| 201 </polymer-element><polymer-element name="collapsible-content" extends="observato
ry-element"> | 203 </polymer-element><polymer-element name="collapsible-content" extends="observato
ry-element"> |
| 202 <template> | 204 <template> |
| 203 <div class="well row"> | 205 <div class="well row"> |
| 204 <a on-click="toggleDisplay" class="btn muted unselectable"> | 206 <a on-click="toggleDisplay" class="btn muted unselectable"> |
| 205 Raw message... <i class="{{ iconClass }}"></i> | 207 Raw message... <i class="{{ iconClass }}"></i> |
| 206 </a> | 208 </a> |
| 207 <div style="display: {{ displayValue }}" class="well"> | 209 <div style="display: {{ displayValue }}" class="well"> |
| 208 <content></content> | 210 <content></content> |
| 209 </div> | 211 </div> |
| 210 </div> | 212 </div> |
| 211 </template> | 213 </template> |
| 212 | 214 |
| 213 </polymer-element><polymer-element name="field-view" extends="observatory-elemen
t"> | 215 </polymer-element><polymer-element name="field-view" extends="observatory-elemen
t"> |
| 214 <template> | 216 <template> |
| 215 <div class="row"> | 217 <div class="row"> |
| 216 <div class="col-md-8 col-md-offset-2"> | 218 <div class="col-md-8 col-md-offset-2"> |
| 217 <div class="panel panel-warning"> | 219 <div class="panel panel-warning"> |
| 218 <div class="panel-heading"> | 220 <div class="panel-heading"> |
| 219 <template if="{{ field['static'] }}">static</template> | 221 <template if="{{ field['static'] }}">static</template> |
| 220 <template if="{{ field['final'] }}">final</template> | 222 <template if="{{ field['final'] }}">final</template> |
| 221 <template if="{{ field['const'] }}">const</template> | 223 <template if="{{ field['const'] }}">const</template> |
| 222 {{ field['user_name'] }} ({{ field['name'] }}) | 224 {{ field['user_name'] }} ({{ field['name'] }}) |
| (...skipping 17 matching lines...) Expand all Loading... |
| 240 </template> | 242 </template> |
| 241 <blockquote> | 243 <blockquote> |
| 242 <class-ref app="{{ app }}" ref="{{ field['guard_class'] }}"></class-
ref> | 244 <class-ref app="{{ app }}" ref="{{ field['guard_class'] }}"></class-
ref> |
| 243 </blockquote> | 245 </blockquote> |
| 244 </template> | 246 </template> |
| 245 </div> | 247 </div> |
| 246 </div> | 248 </div> |
| 247 </div> | 249 </div> |
| 248 </div> | 250 </div> |
| 249 </template> | 251 </template> |
| 250 | 252 |
| 251 </polymer-element><polymer-element name="function-view" extends="observatory-ele
ment"> | 253 </polymer-element><polymer-element name="function-view" extends="observatory-ele
ment"> |
| 252 <template> | 254 <template> |
| 253 <div class="row"> | 255 <div class="row"> |
| 254 <div class="col-md-8 col-md-offset-2"> | 256 <div class="col-md-8 col-md-offset-2"> |
| 255 <div class="panel panel-warning"> | 257 <div class="panel panel-warning"> |
| 256 <div class="panel-heading"> | 258 <div class="panel-heading"> |
| 257 {{ function['user_name'] }} ({{ function['name'] }}) | 259 {{ function['user_name'] }} ({{ function['name'] }}) |
| 258 <class-ref app="{{ app }}" ref="{{ function['class'] }}"></class-ref> | 260 <class-ref app="{{ app }}" ref="{{ function['class'] }}"></class-ref> |
| 259 </div> | 261 </div> |
| 260 <div class="panel-body"> | 262 <div class="panel-body"> |
| (...skipping 27 matching lines...) Expand all Loading... |
| 288 <tr> | 290 <tr> |
| 289 <td>Deoptimizations</td><td>{{ function['deoptimizations'] }}</t
d> | 291 <td>Deoptimizations</td><td>{{ function['deoptimizations'] }}</t
d> |
| 290 </tr> | 292 </tr> |
| 291 </tbody> | 293 </tbody> |
| 292 </table> | 294 </table> |
| 293 </div> | 295 </div> |
| 294 </div> | 296 </div> |
| 295 </div> | 297 </div> |
| 296 </div> | 298 </div> |
| 297 </template> | 299 </template> |
| 298 | 300 |
| 299 </polymer-element><polymer-element name="isolate-summary" extends="observatory-e
lement"> | 301 </polymer-element><polymer-element name="isolate-summary" extends="observatory-e
lement"> |
| 300 <template> | 302 <template> |
| 301 <div class="row"> | 303 <div class="row"> |
| 302 <div class="col-md-1"> | 304 <div class="col-md-1"> |
| 303 <img src="img/isolate_icon.png" class="img-polaroid"> | 305 <img src="img/isolate_icon.png" class="img-polaroid"> |
| 304 </div> | 306 </div> |
| 305 <div class="col-md-1">{{ isolate }}</div> | 307 <div class="col-md-1">{{ isolate }}</div> |
| 306 <div class="col-md-10">{{ name }}</div> | 308 <div class="col-md-10">{{ name }}</div> |
| 307 </div> | 309 </div> |
| 308 <div class="row"> | 310 <div class="row"> |
| 309 <div class="col-md-2"></div> | 311 <div class="col-md-2"></div> |
| 310 <div class="col-md-1"> | 312 <div class="col-md-1"> |
| 311 <a href="{{ app.locationManager.relativeLink(isolate, 'stacktrac
e') }}">Stacktrace</a> | 313 <a href="{{ app.locationManager.relativeLink(isolate, 'stacktrac
e') }}">Stacktrace</a> |
| 312 </div> | 314 </div> |
| 313 <div class="col-md-1"> | 315 <div class="col-md-1"> |
| 314 <a href="{{ app.locationManager.relativeLink(isolate, 'library') }}">Lib
rary</a> | 316 <a href="{{ app.locationManager.relativeLink(isolate, 'library') }}">Lib
rary</a> |
| 315 </div> | 317 </div> |
| 316 <div class="col-md-1"> | 318 <div class="col-md-1"> |
| 317 <a href="{{ app.locationManager.relativeLink(isolate, 'debug/breakpoints
') }}">Breakpoints</a> | 319 <a href="{{ app.locationManager.relativeLink(isolate, 'debug/breakpoints
') }}">Breakpoints</a> |
| 318 </div> | 320 </div> |
| 319 <div class="col-md-1"> | 321 <div class="col-md-1"> |
| 320 <a href="{{ app.locationManager.relativeLink(isolate, 'profile') }}">Pro
file</a> | 322 <a href="{{ app.locationManager.relativeLink(isolate, 'profile') }}">Pro
file</a> |
| 321 </div> | 323 </div> |
| 322 <div class="col-md-1"> | 324 <div class="col-md-1"> |
| 323 <a href="{{ app.locationManager.relativeLink(isolate, 'allocationprofile
') }}">Allocation Profile</a> | 325 <a href="{{ app.locationManager.relativeLink(isolate, 'allocationprofile
') }}">Allocation Profile</a> |
| 324 </div> | 326 </div> |
| 325 <div class="col-md-8"></div> | 327 <div class="col-md-8"></div> |
| 326 </div> | 328 </div> |
| 327 </template> | 329 </template> |
| 328 | 330 |
| 329 </polymer-element> | 331 </polymer-element> |
| 330 <polymer-element name="isolate-list" extends="observatory-element"> | 332 <polymer-element name="isolate-list" extends="observatory-element"> |
| 331 <template> | 333 <template> |
| 332 <ul class="list-group"> | 334 <ul class="list-group"> |
| 333 <template repeat="{{ isolate in app.isolateManager.isolates.values }}"> | 335 <template repeat="{{ isolate in app.isolateManager.isolates.values }}"> |
| 334 <li class="list-group-item"> | 336 <li class="list-group-item"> |
| 335 <isolate-summary app="{{ app }}" isolate="{{ isolate.id }}" name="{{ iso
late.name }}"></isolate-summary> | 337 <isolate-summary app="{{ app }}" isolate="{{ isolate.id }}" name="{{ iso
late.name }}"></isolate-summary> |
| 336 </li> | 338 </li> |
| 337 </template> | 339 </template> |
| 338 </ul> | 340 </ul> |
| 339 (<a href="{{ app.locationManager.absoluteLink('cpu') }}">cpu</a>) | 341 (<a href="{{ app.locationManager.absoluteLink('cpu') }}">cpu</a>) |
| 340 | 342 |
| 341 </template> | 343 </template> |
| 342 | 344 |
| 343 </polymer-element><polymer-element name="instance-view" extends="observatory-ele
ment"> | 345 </polymer-element><polymer-element name="instance-view" extends="observatory-ele
ment"> |
| 344 <template> | 346 <template> |
| 345 <div class="row"> | 347 <div class="row"> |
| 346 <div class="col-md-8 col-md-offset-2"> | 348 <div class="col-md-8 col-md-offset-2"> |
| 347 <div class="panel panel-warning"> | 349 <div class="panel panel-warning"> |
| 348 <div class="panel-heading"> | 350 <div class="panel-heading"> |
| 349 Instance of | 351 Instance of |
| 350 <class-ref app="{{ app }}" ref="{{ instance['class'] }}"></class-ref> | 352 <class-ref app="{{ app }}" ref="{{ instance['class'] }}"></class-ref> |
| 351 </div> | 353 </div> |
| 352 <div class="panel-body"> | 354 <div class="panel-body"> |
| (...skipping 16 matching lines...) Expand all Loading... |
| 369 </table> | 371 </table> |
| 370 </template> | 372 </template> |
| 371 <template if="{{ instance['error'] != null }}"> | 373 <template if="{{ instance['error'] != null }}"> |
| 372 <error-view error_obj="{{ instance['error'] }}"></error-view> | 374 <error-view error_obj="{{ instance['error'] }}"></error-view> |
| 373 </template> | 375 </template> |
| 374 </div> | 376 </div> |
| 375 </div> | 377 </div> |
| 376 </div> | 378 </div> |
| 377 </div> | 379 </div> |
| 378 </template> | 380 </template> |
| 379 | 381 |
| 380 </polymer-element> | 382 </polymer-element> |
| 381 <polymer-element name="json-view" extends="observatory-element"> | 383 <polymer-element name="json-view" extends="observatory-element"> |
| 382 <template> | 384 <template> |
| 383 <template bind="" if="{{ valueType == 'Primitive' }}"> | 385 <template bind="" if="{{ valueType == 'Primitive' }}"> |
| 384 <span>{{primitiveString}}</span> | 386 <span>{{primitiveString}}</span> |
| 385 </template> | 387 </template> |
| 386 <template bind="" if="{{ valueType == 'List' }}"> | 388 <template bind="" if="{{ valueType == 'List' }}"> |
| 387 <table class="table table-condensed table-bordered"> | 389 <table class="table table-condensed table-bordered"> |
| 388 <caption class="text-left">List, {{list.length}}</caption> | 390 <caption class="text-left">List, {{list.length}}</caption> |
| 389 <tbody> | 391 <tbody> |
| 390 <tr template="" repeat="{{item in list)}}"> | 392 <tr template="" repeat="{{item in list)}}"> |
| 391 <th>{{counter}}</th> | 393 <th>{{counter}}</th> |
| 392 <td><json-view json="{{item}}"></json-view></td> | 394 <td><json-view json="{{item}}"></json-view></td> |
| 393 </tr> | 395 </tr> |
| 394 </tbody> | 396 </tbody> |
| 395 </table> | 397 </table> |
| 396 </template> | 398 </template> |
| 397 <template if="{{ valueType == 'Map' }}"> | 399 <template if="{{ valueType == 'Map' }}"> |
| 398 <table class="table table-condensed table-bordered"> | 400 <table class="table table-condensed table-bordered"> |
| 399 <caption class="text-left">Map, {{keys.length}}</caption> | 401 <caption class="text-left">Map, {{keys.length}}</caption> |
| 400 <tbody> | 402 <tbody> |
| 401 <tr template="" repeat="{{key in keys}}"> | 403 <tr template="" repeat="{{key in keys}}"> |
| 402 <th>{{key}}</th> | 404 <th>{{key}}</th> |
| 403 <td><json-view json="{{value(key)}}"></json-view></td> | 405 <td><json-view json="{{value(key)}}"></json-view></td> |
| 404 </tr> | 406 </tr> |
| 405 </tbody> | 407 </tbody> |
| 406 </table> | 408 </table> |
| 407 </template> | 409 </template> |
| 408 </template> | 410 </template> |
| 409 | 411 |
| 410 </polymer-element> | 412 </polymer-element> |
| 411 <polymer-element name="script-ref" extends="service-ref"> | 413 <polymer-element name="script-ref" extends="service-ref"> |
| 412 <template> | 414 <template> |
| 413 <a href="{{ url }}">{{ name }}</a> | 415 <a href="{{ url }}">{{ name }}</a> |
| 414 </template> | 416 </template> |
| 415 | 417 |
| 416 </polymer-element><polymer-element name="library-view" extends="observatory-elem
ent"> | 418 </polymer-element><polymer-element name="library-view" extends="observatory-elem
ent"> |
| 417 <template> | 419 <template> |
| 418 <div class="alert alert-success">Library {{ library['name'] }}</div> | 420 <div class="alert alert-success">Library {{ library['name'] }}</div> |
| 419 <div class="alert alert-info">Scripts</div> | 421 <div class="alert alert-info">Scripts</div> |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 472 <class-ref app="{{ app }}" ref="{{ cls }}"></class-ref> | 474 <class-ref app="{{ app }}" ref="{{ cls }}"></class-ref> |
| 473 </td> | 475 </td> |
| 474 <td> | 476 <td> |
| 475 <class-ref app="{{ app }}" ref="{{ cls }}" internal=""></class-ref> | 477 <class-ref app="{{ app }}" ref="{{ cls }}" internal=""></class-ref> |
| 476 </td> | 478 </td> |
| 477 </tr> | 479 </tr> |
| 478 </tbody> | 480 </tbody> |
| 479 </table> | 481 </table> |
| 480 | 482 |
| 481 </template> | 483 </template> |
| 482 | 484 |
| 483 </polymer-element><polymer-element name="heap-profile" extends="observatory-elem
ent"> | 485 </polymer-element><polymer-element name="heap-profile" extends="observatory-elem
ent"> |
| 484 <template> | 486 <template> |
| 485 <div> | 487 <div> |
| 486 <button type="button" on-click="{{refreshData}}">Refresh</button> | 488 <button type="button" on-click="{{refreshData}}">Refresh</button> |
| 487 </div> | 489 </div> |
| 488 <div> | 490 <div class="row"> |
| 489 <span>New Space </span> | 491 <div id="newPieChart" class="col-md-4" style="height: 400px"> |
| 490 <span>{{ status(true) }}</span> | 492 </div> |
| 493 <div id="newStatus" class="col-md-2"> |
| 494 <table class="table"> |
| 495 <tbody> |
| 496 <tr> |
| 497 <td>Collections</td> |
| 498 <td>{{ formattedCollections(true) }}</td> |
| 499 </tr> |
| 500 <tr> |
| 501 <td>Average Collection Time</td> |
| 502 <td>{{ formattedAverage(true) }}</td> |
| 503 </tr> |
| 504 <tr> |
| 505 <td>Cumulative Collection Time</td> |
| 506 <td>{{ formattedTotalCollectionTime(true) }}</td> |
| 507 </tr> |
| 508 </tbody> |
| 509 </table> |
| 510 </div> |
| 511 <div id="oldPieChart" class="col-md-4" style="height: 400px"> |
| 512 </div> |
| 513 <div id="oldStatus" class="col-md-2"> |
| 514 <table class="table"> |
| 515 <tbody> |
| 516 <tr> |
| 517 <td>Collections</td> |
| 518 <td>{{ formattedCollections(true) }}</td> |
| 519 </tr> |
| 520 <tr> |
| 521 <td>Average Collection Time</td> |
| 522 <td>{{ formattedAverage(true) }}</td> |
| 523 </tr> |
| 524 <tr> |
| 525 <td>Cumulative Collection Time</td> |
| 526 <td>{{ formattedTotalCollectionTime(true) }}</td> |
| 527 </tr> |
| 528 </tbody> |
| 529 </table> |
| 530 </div> |
| 491 </div> | 531 </div> |
| 492 <div> | 532 <div class="row"> |
| 493 <span>Old Space </span> | 533 <div id="table" class="col-md-12" style="height: 800px"></div> |
| 494 <span>{{ status(false) }}</span> | |
| 495 </div> | 534 </div> |
| 496 <table class="table table-hover"> | |
| 497 <thead> | |
| 498 <tr> | |
| 499 <th>Class</th> | |
| 500 <th><button on-click="{{changeSortColumn}}" data-msg="1">Current (new)</
button></th> | |
| 501 <th><button on-click="{{changeSortColumn}}" data-msg="2">Allocated since
GC (new)</button></th> | |
| 502 <th><button on-click="{{changeSortColumn}}" data-msg="3">Total before la
st GC (new)</button></th> | |
| 503 <th><button on-click="{{changeSortColumn}}" data-msg="4">Total after las
t GC (new)</button></th> | |
| 504 <th><button on-click="{{changeSortColumn}}" data-msg="5">Current (old)</
button></th> | |
| 505 <th><button on-click="{{changeSortColumn}}" data-msg="6">Allocated since
GC (old)</button></th> | |
| 506 <th><button on-click="{{changeSortColumn}}" data-msg="7">Total before la
st GC (old)</button></th> | |
| 507 <th><button on-click="{{changeSortColumn}}" data-msg="8">Total after las
t GC (old)</button></th> | |
| 508 </tr> | |
| 509 </thead> | |
| 510 <tbody> | |
| 511 <tr template="" repeat="{{ cls in sortedProfile }}"> | |
| 512 <td><class-ref app="{{ app }}" ref="{{ cls['class'] }}"></class-ref></td> | |
| 513 <td>{{ current(cls, true) }}</td> | |
| 514 <td>{{ allocated(cls, true) }}</td> | |
| 515 <td>{{ beforeGC(cls, true) }}</td> | |
| 516 <td>{{ afterGC(cls, true) }}</td> | |
| 517 <td>{{ current(cls, false) }}</td> | |
| 518 <td>{{ allocated(cls, false) }}</td> | |
| 519 <td>{{ beforeGC(cls, false) }}</td> | |
| 520 <td>{{ afterGC(cls, false) }}</td> | |
| 521 </tr> | |
| 522 </tbody> | |
| 523 </table> | |
| 524 </template> | 535 </template> |
| 525 | 536 |
| 526 </polymer-element><polymer-element name="script-view" extends="observatory-eleme
nt"> | 537 </polymer-element> |
| 538 <polymer-element name="script-view" extends="observatory-element"> |
| 527 <template> | 539 <template> |
| 528 <div class="row"> | 540 <div class="row"> |
| 529 <div class="col-md-8 col-md-offset-2"> | 541 <div class="col-md-8 col-md-offset-2"> |
| 530 <div class="panel-heading"> | 542 <div class="panel-heading"> |
| 531 <button on-click="{{refreshCoverage}}">Refresh Coverage</button> | 543 <button on-click="{{refreshCoverage}}">Refresh Coverage</button> |
| 532 {{ script.scriptRef['user_name'] }} | 544 {{ script.scriptRef['user_name'] }} |
| 533 {{ script.coveredPercentageFormatted() }} | 545 {{ script.coveredPercentageFormatted() }} |
| 534 </div> | 546 </div> |
| 535 <div class="panel-body"> | 547 <div class="panel-body"> |
| 536 <table style="width:100%"> | 548 <table style="width:100%"> |
| (...skipping 25 matching lines...) Expand all Loading... |
| 562 <tbody> | 574 <tbody> |
| 563 <tr template="" repeat="{{ frame in trace['members'] }}"> | 575 <tr template="" repeat="{{ frame in trace['members'] }}"> |
| 564 <td></td> | 576 <td></td> |
| 565 <td><function-ref app="{{ app }}" ref="{{ frame['function'] }}"></functi
on-ref></td> | 577 <td><function-ref app="{{ app }}" ref="{{ frame['function'] }}"></functi
on-ref></td> |
| 566 <td><script-ref app="{{ app }}" ref="{{ frame['script'] }}"></script-ref
></td> | 578 <td><script-ref app="{{ app }}" ref="{{ frame['script'] }}"></script-ref
></td> |
| 567 <td>{{ frame['line'] }}</td> | 579 <td>{{ frame['line'] }}</td> |
| 568 </tr> | 580 </tr> |
| 569 </tbody> | 581 </tbody> |
| 570 </table> | 582 </table> |
| 571 </template> | 583 </template> |
| 572 | 584 |
| 573 </polymer-element><polymer-element name="message-viewer" extends="observatory-el
ement"> | 585 </polymer-element><polymer-element name="message-viewer" extends="observatory-el
ement"> |
| 574 <!-- | 586 <!-- |
| 575 This is a big switch statement which instantiates the custom element | 587 This is a big switch statement which instantiates the custom element |
| 576 designated to display the message type. | 588 designated to display the message type. |
| 577 --> | 589 --> |
| 578 <template> | 590 <template> |
| 579 <!-- If the message type is an IsolateList --> | 591 <!-- If the message type is an IsolateList --> |
| 580 <template if="{{ messageType == 'IsolateList' }}"> | 592 <template if="{{ messageType == 'IsolateList' }}"> |
| 581 <isolate-list app="{{ app }}"></isolate-list> | 593 <isolate-list app="{{ app }}"></isolate-list> |
| 582 </template> | 594 </template> |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 627 <script-view app="{{ app }}" script="{{ message['script'] }}"></script-vie
w> | 639 <script-view app="{{ app }}" script="{{ message['script'] }}"></script-vie
w> |
| 628 </template> | 640 </template> |
| 629 <template if="{{ messageType == 'AllocationProfile' }}"> | 641 <template if="{{ messageType == 'AllocationProfile' }}"> |
| 630 <heap-profile app="{{ app }}" profile="{{ message }}"></heap-profile> | 642 <heap-profile app="{{ app }}" profile="{{ message }}"></heap-profile> |
| 631 </template> | 643 </template> |
| 632 <template if="{{ messageType == 'CPU' }}"> | 644 <template if="{{ messageType == 'CPU' }}"> |
| 633 <json-view json="{{ message }}"></json-view> | 645 <json-view json="{{ message }}"></json-view> |
| 634 </template> | 646 </template> |
| 635 <!-- Add new views and message types in the future here. --> | 647 <!-- Add new views and message types in the future here. --> |
| 636 </template> | 648 </template> |
| 637 | 649 |
| 638 </polymer-element><polymer-element name="navigation-bar-isolate" extends="observ
atory-element"> | 650 </polymer-element><polymer-element name="navigation-bar-isolate" extends="observ
atory-element"> |
| 639 <template> | 651 <template> |
| 640 <ul class="nav navbar-nav"> | 652 <ul class="nav navbar-nav"> |
| 641 <li><a href="{{ currentIsolateLink('') }}"> {{currentIsolateName()}}</a>
</li> | 653 <li><a href="{{ currentIsolateLink('') }}"> {{currentIsolateName()}}</a>
</li> |
| 642 <template repeat="{{link in links}}"> | 654 <template repeat="{{link in links}}"> |
| 643 <li><a href="{{ currentIsolateLink(link) }}">{{ link }}</a></li> | 655 <li><a href="{{ currentIsolateLink(link) }}">{{ link }}</a></li> |
| 644 </template> | 656 </template> |
| 645 </ul> | 657 </ul> |
| 646 </template> | 658 </template> |
| 647 | 659 |
| 648 </polymer-element><polymer-element name="navigation-bar" extends="observatory-el
ement"> | 660 </polymer-element><polymer-element name="navigation-bar" extends="observatory-el
ement"> |
| 649 <template> | 661 <template> |
| 650 <nav class="navbar navbar-default" role="navigation"> | 662 <nav class="navbar navbar-default" role="navigation"> |
| 651 <div class="navbar-header"> | 663 <div class="navbar-header"> |
| 652 <a class="navbar-brand" href="#/isolates">Observatory</a> | 664 <a class="navbar-brand" href="#/isolates">Observatory</a> |
| 653 </div> | 665 </div> |
| 654 <template if="{{ app.locationManager.hasCurrentIsolate }}"> | 666 <template if="{{ app.locationManager.hasCurrentIsolate }}"> |
| 655 <div class="collapse navbar-collapse navbar-ex1-collapse"> | 667 <div class="collapse navbar-collapse navbar-ex1-collapse"> |
| 656 <navigation-bar-isolate app="{{ app }}"></navigation-bar-isolate> | 668 <navigation-bar-isolate app="{{ app }}"></navigation-bar-isolate> |
| 657 </div> | 669 </div> |
| 658 </template> | 670 </template> |
| 659 </nav> | 671 </nav> |
| 660 </template> | 672 </template> |
| 661 | 673 |
| 662 </polymer-element><polymer-element name="isolate-profile" extends="observatory-e
lement"> | 674 </polymer-element><polymer-element name="isolate-profile" extends="observatory-e
lement"> |
| 663 <template> | 675 <template> |
| 664 <p> P R O F I L E </p> | 676 <p> P R O F I L E </p> |
| 665 <div> | 677 <div> |
| 666 <button type="button" on-click="{{refreshData}}">Refresh profile data</but
ton> | 678 <button type="button" on-click="{{refreshData}}">Refresh profile data</but
ton> |
| 667 <span>Top</span> | 679 <span>Top</span> |
| 668 <select selectedindex="{{methodCountSelected}}" value="{{methodCounts[meth
odCountSelected]}}"> | 680 <select selectedindex="{{methodCountSelected}}" value="{{methodCounts[meth
odCountSelected]}}"> |
| 669 <option template="" repeat="{{count in methodCounts}}">{{count}}</option
> | 681 <option template="" repeat="{{count in methodCounts}}">{{count}}</option
> |
| 670 </select> | 682 </select> |
| 671 <span>methods</span> | 683 <span>methods</span> |
| (...skipping 11 matching lines...) Expand all Loading... |
| 683 <tr template="" repeat="{{ code in topExclusiveCodes }}"> | 695 <tr template="" repeat="{{ code in topExclusiveCodes }}"> |
| 684 <td>{{ codeTicks(code, false) }}</td> | 696 <td>{{ codeTicks(code, false) }}</td> |
| 685 <td>{{ codePercent(code, false) }}</td> | 697 <td>{{ codePercent(code, false) }}</td> |
| 686 <td> | 698 <td> |
| 687 <span>{{ codeName(code) }}</span> | 699 <span>{{ codeName(code) }}</span> |
| 688 <code-ref app="{{ app }}" ref="{{ code.codeRef }}"></code-ref> | 700 <code-ref app="{{ app }}" ref="{{ code.codeRef }}"></code-ref> |
| 689 </td> | 701 </td> |
| 690 </tr> | 702 </tr> |
| 691 </tbody></table> | 703 </tbody></table> |
| 692 </template> | 704 </template> |
| 693 | 705 |
| 694 </polymer-element> | 706 </polymer-element> |
| 695 <polymer-element name="response-viewer" extends="observatory-element"> | 707 <polymer-element name="response-viewer" extends="observatory-element"> |
| 696 <template> | 708 <template> |
| 697 <template repeat="{{ message in app.requestManager.responses }}"> | 709 <template repeat="{{ message in app.requestManager.responses }}"> |
| 698 <message-viewer app="{{ app }}" message="{{ message }}"></message-viewer> | 710 <message-viewer app="{{ app }}" message="{{ message }}"></message-viewer> |
| 699 </template> | 711 </template> |
| 700 </template> | 712 </template> |
| 701 | 713 |
| 702 </polymer-element><polymer-element name="observatory-application" extends="obser
vatory-element"> | 714 </polymer-element><polymer-element name="observatory-application" extends="obser
vatory-element"> |
| 703 <template> | 715 <template> |
| 704 <navigation-bar app="{{ app }}"></navigation-bar> | 716 <navigation-bar app="{{ app }}"></navigation-bar> |
| 705 <template if="{{ app.locationManager.profile }}"> | 717 <template if="{{ app.locationManager.profile }}"> |
| 706 <isolate-profile app="{{ app }}"></isolate-profile> | 718 <isolate-profile app="{{ app }}"></isolate-profile> |
| 707 </template> | 719 </template> |
| 708 <template if="{{ app.locationManager.profile == false }}"> | 720 <template if="{{ app.locationManager.profile == false }}"> |
| 709 <response-viewer app="{{ app }}"></response-viewer> | 721 <response-viewer app="{{ app }}"></response-viewer> |
| 710 </template> | 722 </template> |
| 711 </template> | 723 </template> |
| 712 | 724 |
| 713 </polymer-element> | 725 </polymer-element> |
| 714 <observatory-application></observatory-application> | 726 <observatory-application></observatory-application> |
| 715 | 727 |
| 716 </body></html> | 728 </body></html> |
| OLD | NEW |