John McCutchan
4e9716ee40
Update view footer with github bug report url
...
BUG=
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//1254413011 .
2015-07-31 14:23:45 -07:00
John McCutchan
de035901a1
Introduce two utility elements for the cpu profiler
...
- Add <sample-buffer-control> which manages fetching a sample buffer from an isolate.
- Remove duplicate code by using <sample-buffer-control> in both the tree and table profile views.
- Add <stack-trace-tree-config> which manages how a stack trace tree should be displayed (function or code objects, bottom up or top down).
- Remove duplicate code by using <stack-trace-tree-config> in both the tree and table profile views.
This is the first of many CLs refactoring the CPU profile related code in Observatory. This introduces some naming inconsistencies (CpuProfile vs. SampleBuffer) that will converge to SampleBuffer over time.
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//1266193003 .
2015-07-31 14:19:17 -07:00
Rico Wind
93ec16c34c
Nuke some whitespace in observatory
...
R=johnmccutchan@google.com
BUG=
Review URL: https://codereview.chromium.org//1255273007 .
2015-07-30 17:47:50 +02:00
John McCutchan
d9394ac865
Fix exception on first navigation to metrics page
...
BUG=
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//1262003002 .
2015-07-28 16:13:09 -07:00
Ryan Macnak
8c98455ab5
Retaining path improvements.
...
- Don't answer retaining paths that go through ICData.
- Associate edge labels with the referer instead of the referent.
- Give edge labels for VM classes (offsets only).
- Make is possible to distinguish closures and functions from their refs.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1246073005 .
2015-07-28 15:56:10 -07:00
John McCutchan
d3154f4247
Logging page
...
- Per isolate logging page.
- Drop down to control log level threshold.
- Console area where messages are displayed.
- UI test.
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//1250853006 .
2015-07-22 14:33:13 -07:00
Ryan Macnak
f26050ce08
Automatically step past async state-machine switch for 'anext'.
...
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1244983002 .
2015-07-21 10:36:00 -07:00
John McCutchan
9a90002eda
Add missing toInt call
...
BUG=
Review URL: https://codereview.chromium.org//1243893003 .
2015-07-21 08:48:30 -07:00
John McCutchan
f818f9dc0f
Support piping log data over the service protocol
...
BUG=
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//1241683005 .
2015-07-21 07:54:46 -07:00
Ryan Macnak
7663e4a894
Rename 'astep' to 'anext' to better reflect its semantics.
...
R=turnidge@google.com
Review URL: https://codereview.chromium.org//1243523002 .
2015-07-16 17:34:34 -07:00
Ryan Macnak
0979a7b23e
Async-step, first cut.
...
Also fix inclusion of internal variables from outer scopes in var descriptors.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1241673003 .
2015-07-16 13:05:37 -07:00
John McCutchan
4747a63ad6
Factor cpu profile tree into separate element and expose allocation tracing UI
...
BUG=
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//1241653002 .
2015-07-14 13:56:45 -07:00
Todd Turnidge
e4684c7627
Provide stdout and stderr output in the Observatory debugger.
...
Implement two new streams, 'Stdout' and 'Stderr' in the service protocol.
BUG=
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1232193003 .
2015-07-14 12:54:07 -07:00
Todd Turnidge
a02c7694c5
Make random clicks in the debugger give the command line input focus.
...
If the user selects a range, respect that.
Add some inner spacing on the command line input box. Makes it feel
less claustrophobic.
BUG=
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//1233053002 .
2015-07-14 12:35:32 -07:00
John McCutchan
a92a3c8af3
Expose allocation tracing over service protocol
...
BUG=
R=turnidge@google.com
Review URL: https://codereview.chromium.org//1231603008 .
2015-07-14 11:41:57 -07:00
John McCutchan
07a927e74d
Do not report Observatory analytics when running in Dart
...
BUG=
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//1236223002 .
2015-07-14 11:34:55 -07:00
Ryan Macnak
1ef2b68e65
Deal with Javascript integer limitations in heap snapshot processing to handle 64-bit target VMs.
...
R=turnidge@google.com
Review URL: https://codereview.chromium.org//1219103002 .
2015-07-13 17:27:55 -07:00
Todd Turnidge
c4dad3117a
Make VM event streams look like real dart streams.
...
This is a bit ugly in that vm event streams are created
asynchronously, which is not very natural with the dart libs.
Update tests accordingly.
BUG=
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1217823009 .
2015-07-08 14:18:59 -07:00
Ryan Macnak
f84461ed48
Observatory improvements for exploring compiled code.
...
- Views for ObjectPool, Instructions, ICData.
- Allow querying retained size of non-Instances.
- References to non-Dart functions as links.
- Find ic data array from a Function.
- Fix NPE when current token position in a script inset cannot be mapped.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1212933003 .
2015-06-26 14:29:49 -07:00
Ryan Macnak
69938db31a
Include pattern and functions for RegExps over the service protocol.
...
Remove some quadratic behavior from processing/display of Code in Observatory, so we can actually look at 300k regexp instructions.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1208153002 .
2015-06-25 12:56:59 -07:00
Ryan Macnak
e747d0516b
Observatory UI tweaks.
...
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1194103002 .
2015-06-19 14:26:34 -07:00
Ryan Macnak
723334d344
UI for setting/clearing closure-specific breakpoints.
...
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1191133002 .
2015-06-18 14:01:19 -07:00
John McCutchan
851ef4a4af
Ports page for isolates
...
Per isolate list of open ports and their handler
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//1189543003 .
2015-06-18 10:24:28 -07:00
John McCutchan
d2751e2094
Fix last column calculation in scanForLocalVariableLocations
...
BUG=
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//1187953005 .
2015-06-18 07:53:27 -07:00
Ryan Macnak
9d16fe0078
Re-focus the command box after a stack refresh.
...
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1181943009 .
2015-06-17 09:39:45 -07:00
Ryan Macnak
392a83221f
Allow setting break-on-exceptions option over the service protocol. Add command to Observatory's debugger.
...
Decide whether to cache service objects based on the fixedId property.
Be more tolerant of eval scripts and functions.
BUG=
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1174313002 .
2015-06-15 12:05:23 -07:00
Florian Schneider
09b59b6c16
Fix checked mode service test.
...
The object pool is not an Instance, but a VM object now.
TBR=johnmccutchan@google.com ,
Review URL: https://codereview.chromium.org//1174943002 .
2015-06-10 13:24:09 +02:00
Ryan Macnak
304382c1b4
Add TypedData instance kinds.
...
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1157003003 .
2015-06-08 17:30:11 -07:00
John McCutchan
82d3caefc7
Fix code display in Observatory
...
BUG=
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//1164413002
2015-06-08 14:55:26 -07:00
Todd Turnidge
996f012707
2nd attempt at adding streamListen/streamCancel to the service protocol.
...
This time I am committing the protocol changes first and saving the
Observatory changes for a second cl.
------
We currently support 5 streams: Isolate, Debug, GC, _Echo, and _Graph.
Only generate events when at least one client is listening to the
corresponding event stream.
Only send events to the clients that actually request them.
BUG=
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1166433008
2015-06-04 09:57:22 -07:00
Todd Turnidge
1b59b9ea06
Service cleanups...
...
- Allow for multiple breakpoints in the service protocol.
The info isn't actually provided or used yet.
- Drop index for list elements returned by the protocol. Flatten structure.
- Drop index for context elements. Keep sub-structure so we
can choose to add extra slot info later.
- Errors now have ids and kinds.
- exception and stacktrace move from @Error to Error.
- All heap Objects now include class/size.
- Changed BoundedType.type and TypeRef.type to different names.
Turns out we already have a "type" property that conflicts.
BUG=
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1152753005
2015-06-04 09:09:22 -07:00
Todd Turnidge
4a3b6fe160
Rework the format of the FlagList response.
...
BUG=
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1149403007
2015-06-03 10:09:15 -07:00
Todd Turnidge
6c2ebfcc60
Switch to using SourceLocation universally in service protocol.
...
Add <location-link> and <location-inset> to provide links and insets
for a location.
Make Frame, Message, and SourceLocation first class in service lib.
BUG=
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1150303004
2015-06-03 09:02:40 -07:00
Ryan Macnak
eca0d72abe
Provide a logical view of VM-internal maps in Observatory.
...
BUG=http://dartbug.com/20551
BUG=http://dartbug.com/21185
R=koda@google.com
Review URL: https://codereview.chromium.org//1150103005
2015-06-02 11:38:39 -07:00
Ryan Macnak
98999e6a02
Misc Observatory patches:
...
- Address some editor hints.
- Place eval box above fields and be much more generous in expanding fields.
- Treat maps as plain instances so their refs aren't blank.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1159783004
2015-06-01 14:59:54 -07:00
Todd Turnidge
f6d3d4681d
Rename some service protocol errors.
...
BUG=
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//1164463005
2015-06-01 09:26:54 -07:00
Ryan Macnak
c6ebef9526
Address hints in the Observatory.
...
R=turnidge@google.com
Review URL: https://codereview.chromium.org//1161553013
2015-05-29 13:42:31 -07:00
Todd Turnidge
8adf7de6d1
Introduce Instance.kind.
...
Use this instead of subclassing Instance in the service protocol.
Revise many instance property names.
BUG=
R=johnmccutchan@google.com , rmacnak@google.com
Review URL: https://codereview.chromium.org//1162133002
2015-05-29 13:02:36 -07:00
Todd Turnidge
67adc6102d
Add getVersion and setLibraryDebuggable RPCs to the service protocol.
...
BUG=
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1149373006
2015-05-28 13:34:23 -07:00
Ryan Macnak
2764bcefba
Give structured information about imports and export in the service's library response.
...
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1160943002
2015-05-28 11:37:20 -07:00
Todd Turnidge
ab6b2218b0
Standardize on using "kind" to distinguish sub-varieties of a type.
...
- Event.eventType -> Event.kind.
- Sentinel.id -> Sentinel.kind.
We were already doing this for Code and will do so for Instance in
an upcoming cl.
BUG=
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1153193006
2015-05-28 11:04:32 -07:00
Todd Turnidge
3d02f21309
Service protocol cleanups.
...
- ServiceEvent -> Event, protocol only.
- Use camel-case for StepOption
- Hide FlagType but make it camel-case too.
BUG=
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1156803003
2015-05-28 10:24:09 -07:00
Todd Turnidge
563083696c
Sundry service protocol cleanups before version 1.0.
...
Frame.depth -> Frame.index
Message.depth -> Message.index
Remove Message.type
Message.priority becomes private
frame -> frameIndex for evaluateInFrame
Class.finalized, Class.implemented, Class.patch Class.allocationStats become private
Instance.nativeFields becomes private
Field.value moves out of "ref" into full object
Field.value -> Field.staticValue
Move Function.static, Function.const to "ref"
Make Script.kind private in docs
Make Function.kind private
BUG=
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//1160873002
2015-05-28 09:30:55 -07:00
Todd Turnidge
95dc56e27e
Make several service protocol RPCs private.
...
BUG=
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//1159003002
2015-05-27 11:25:56 -07:00
Ryan Macnak
74dfae69e3
Reapply "Per-closure breakpoints; restructure breakpoint implementation to keep a list of conditions."
...
Fix copying breakpoints over to a new location when a latent location is resolved.
Fix bad assumption that BreakpointLocationAtLine always returns non-null result.
Review URL: https://codereview.chromium.org//1149983003
2015-05-27 09:59:33 -07:00
Ryan Macnak
dfee2bf45d
Mark script kinds as private in the service protocol.
...
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1158863002
2015-05-27 09:28:19 -07:00
Ryan Macnak
69c50f7294
Use words! closureFunc -> function, closureCtxt -> context.
...
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1158103002
2015-05-26 16:08:32 -07:00
Ryan Macnak
1fa8c92f31
Libraries have uris not urls. Scripts have uris not names.
...
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1154163004
2015-05-26 16:03:05 -07:00
Todd Turnidge
8d24372339
Revert "Add the streamListen and streamCancel rpcs to the vm service."
...
This reverts commit 0967b63073 .
Conflicts:
runtime/observatory/tests/service/graph_test.dart
runtime/vm/service.cc
BUG=
Review URL: https://codereview.chromium.org//1152283005
2015-05-26 15:22:39 -07:00
Ryan Macnak
bad1ccb2f7
Heap snapshot visualizations:
...
- Dominator tree with retained sizes
- Merge nodes by class
- Split snapshot into chunks so the browser's websockets implementation can handle them.
- Use TypedData indexed by node ids instead of lists of objects and a higher time complexity but more memory efficient algorithm to find the dominator tree (reduces memory usage to ~2X the size of the heap being analyzed from >10X).
R=johnmccutchan@google.com , koda@google.com
Review URL: https://codereview.chromium.org//1124153006
2015-05-26 14:46:28 -07:00