| # Copyright 2017 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| version |
| major 1 |
| minor 3 |
| |
| # This domain is deprecated - use Runtime or Log instead. |
| deprecated domain Console |
| depends on Runtime |
| |
| # Console message. |
| type ConsoleMessage extends object |
| properties |
| # Message source. |
| enum source |
| xml |
| javascript |
| network |
| console-api |
| storage |
| appcache |
| rendering |
| security |
| other |
| deprecation |
| worker |
| # Message severity. |
| enum level |
| log |
| warning |
| error |
| debug |
| info |
| # Message text. |
| string text |
| # URL of the message origin. |
| optional string url |
| # Line number in the resource that generated this message (1-based). |
| optional integer line |
| # Column number in the resource that generated this message (1-based). |
| optional integer column |
| |
| # Does nothing. |
| command clearMessages |
| |
| # Disables console domain, prevents further console messages from being reported to the client. |
| command disable |
| |
| # Enables console domain, sends the messages collected so far to the client by means of the |
| # `messageAdded` notification. |
| command enable |
| |
| # Issued when new console message is added. |
| event messageAdded |
| parameters |
| # Console message that has been added. |
| ConsoleMessage message |
| |
| # Debugger domain exposes JavaScript debugging capabilities. It allows setting and removing |
| # breakpoints, stepping through execution, exploring stack traces, etc. |
| domain Debugger |
| depends on Runtime |
| |
| # Breakpoint identifier. |
| type BreakpointId extends string |
| |
| # Call frame identifier. |
| type CallFrameId extends string |
| |
| # Location in the source code. |
| type Location extends object |
| properties |
| # Script identifier as reported in the `Debugger.scriptParsed`. |
| Runtime.ScriptId scriptId |
| # Line number in the script (0-based). |
| integer lineNumber |
| # Column number in the script (0-based). |
| optional integer columnNumber |
| |
| # Location in the source code. |
| experimental type ScriptPosition extends object |
| properties |
| integer lineNumber |
| integer columnNumber |
| |
| # JavaScript call frame. Array of call frames form the call stack. |
| type CallFrame extends object |
| properties |
| # Call frame identifier. This identifier is only valid while the virtual machine is paused. |
| CallFrameId callFrameId |
| # Name of the JavaScript function called on this call frame. |
| string functionName |
| # Location in the source code. |
| optional Location functionLocation |
| # Location in the source code. |
| Location location |
| # JavaScript script name or url. |
| string url |
| # Scope chain for this call frame. |
| array of Scope scopeChain |
| # `this` object for this call frame. |
| Runtime.RemoteObject this |
| # The value being returned, if the function is at return point. |
| optional Runtime.RemoteObject returnValue |
| |
| # Scope description. |
| type Scope extends object |
| properties |
| # Scope type. |
| enum type |
| global |
| local |
| with |
| closure |
| catch |
| block |
| script |
| eval |
| module |
| # Object representing the scope. For `global` and `with` scopes it represents the actual |
| # object; for the rest of the scopes, it is artificial transient object enumerating scope |
| # variables as its properties. |
| Runtime.RemoteObject object |
| optional string name |
| # Location in the source code where scope starts |
| optional Location startLocation |
| # Location in the source code where scope ends |
| optional Location endLocation |
| |
| # Search match for resource. |
| type SearchMatch extends object |
| properties |
| # Line number in resource content. |
| number lineNumber |
| # Line with match content. |
| string lineContent |
| |
| type BreakLocation extends object |
| properties |
| # Script identifier as reported in the `Debugger.scriptParsed`. |
| Runtime.ScriptId scriptId |
| # Line number in the script (0-based). |
| integer lineNumber |
| # Column number in the script (0-based). |
| optional integer columnNumber |
| optional enum type |
| debuggerStatement |
| call |
| return |
| |
| # Continues execution until specific location is reached. |
| command continueToLocation |
| parameters |
| # Location to continue to. |
| Location location |
| optional enum targetCallFrames |
| any |
| current |
| |
| # Disables debugger for given page. |
| command disable |
| |
| # Enables debugger for the given page. Clients should not assume that the debugging has been |
| # enabled until the result for this command is received. |
| command enable |
| parameters |
| # The maximum size in bytes of collected scripts (not referenced by other heap objects) |
| # the debugger can hold. Puts no limit if paramter is omitted. |
| experimental optional number maxScriptsCacheSize |
| returns |
| # Unique identifier of the debugger. |
| experimental Runtime.UniqueDebuggerId debuggerId |
| |
| # Evaluates expression on a given call frame. |
| command evaluateOnCallFrame |
| parameters |
| # Call frame identifier to evaluate on. |
| CallFrameId callFrameId |
| # Expression to evaluate. |
| string expression |
| # String object group name to put result into (allows rapid releasing resulting object handles |
| # using `releaseObjectGroup`). |
| optional string objectGroup |
| # Specifies whether command line API should be available to the evaluated expression, defaults |
| # to false. |
| optional boolean includeCommandLineAPI |
| # In silent mode exceptions thrown during evaluation are not reported and do not pause |
| # execution. Overrides `setPauseOnException` state. |
| optional boolean silent |
| # Whether the result is expected to be a JSON object that should be sent by value. |
| optional boolean returnByValue |
| # Whether preview should be generated for the result. |
| experimental optional boolean generatePreview |
| # Whether to throw an exception if side effect cannot be ruled out during evaluation. |
| optional boolean throwOnSideEffect |
| # Terminate execution after timing out (number of milliseconds). |
| experimental optional Runtime.TimeDelta timeout |
| returns |
| # Object wrapper for the evaluation result. |
| Runtime.RemoteObject result |
| # Exception details. |
| optional Runtime.ExceptionDetails exceptionDetails |
| |
| # Returns possible locations for breakpoint. scriptId in start and end range locations should be |
| # the same. |
| command getPossibleBreakpoints |
| parameters |
| # Start of range to search possible breakpoint locations in. |
| Location start |
| # End of range to search possible breakpoint locations in (excluding). When not specified, end |
| # of scripts is used as end of range. |
| optional Location end |
| # Only consider locations which are in the same (non-nested) function as start. |
| optional boolean restrictToFunction |
| returns |
| # List of the possible breakpoint locations. |
| array of BreakLocation locations |
| |
| # Returns source for the script with given id. |
| command getScriptSource |
| parameters |
| # Id of the script to get source for. |
| Runtime.ScriptId scriptId |
| returns |
| # Script source. |
| string scriptSource |
| |
| # Returns stack trace with given `stackTraceId`. |
| experimental command getStackTrace |
| parameters |
| Runtime.StackTraceId stackTraceId |
| returns |
| Runtime.StackTrace stackTrace |
| |
| # Stops on the next JavaScript statement. |
| command pause |
| |
| experimental command pauseOnAsyncCall |
| parameters |
| # Debugger will pause when async call with given stack trace is started. |
| Runtime.StackTraceId parentStackTraceId |
| |
| # Removes JavaScript breakpoint. |
| command removeBreakpoint |
| parameters |
| BreakpointId breakpointId |
| |
| # Restarts particular call frame from the beginning. |
| command restartFrame |
| parameters |
| # Call frame identifier to evaluate on. |
| CallFrameId callFrameId |
| returns |
| # New stack trace. |
| array of CallFrame callFrames |
| # Async stack trace, if any. |
| optional Runtime.StackTrace asyncStackTrace |
| # Async stack trace, if any. |
| experimental optional Runtime.StackTraceId asyncStackTraceId |
| |
| # Resumes JavaScript execution. |
| command resume |
| |
| # Searches for given string in script content. |
| command searchInContent |
| parameters |
| # Id of the script to search in. |
| Runtime.ScriptId scriptId |
| # String to search for. |
| string query |
| # If true, search is case sensitive. |
| optional boolean caseSensitive |
| # If true, treats string parameter as regex. |
| optional boolean isRegex |
| returns |
| # List of search matches. |
| array of SearchMatch result |
| |
| # Enables or disables async call stacks tracking. |
| command setAsyncCallStackDepth |
| parameters |
| # Maximum depth of async call stacks. Setting to `0` will effectively disable collecting async |
| # call stacks (default). |
| integer maxDepth |
| |
| # Replace previous blackbox patterns with passed ones. Forces backend to skip stepping/pausing in |
| # scripts with url matching one of the patterns. VM will try to leave blackboxed script by |
| # performing 'step in' several times, finally resorting to 'step out' if unsuccessful. |
| experimental command setBlackboxPatterns |
| parameters |
| # Array of regexps that will be used to check script url for blackbox state. |
| array of string patterns |
| |
| # Makes backend skip steps in the script in blackboxed ranges. VM will try leave blacklisted |
| # scripts by performing 'step in' several times, finally resorting to 'step out' if unsuccessful. |
| # Positions array contains positions where blackbox state is changed. First interval isn't |
| # blackboxed. Array should be sorted. |
| experimental command setBlackboxedRanges |
| parameters |
| # Id of the script. |
| Runtime.ScriptId scriptId |
| array of ScriptPosition positions |
| |
| # Sets JavaScript breakpoint at a given location. |
| command setBreakpoint |
| parameters |
| # Location to set breakpoint in. |
| Location location |
| # Expression to use as a breakpoint condition. When specified, debugger will only stop on the |
| # breakpoint if this expression evaluates to true. |
| optional string condition |
| returns |
| # Id of the created breakpoint for further reference. |
| BreakpointId breakpointId |
| # Location this breakpoint resolved into. |
| Location actualLocation |
| |
| # Sets instrumentation breakpoint. |
| command setInstrumentationBreakpoint |
| parameters |
| # Instrumentation name. |
| enum instrumentation |
| beforeScriptExecution |
| beforeScriptWithSourceMapExecution |
| returns |
| # Id of the created breakpoint for further reference. |
| BreakpointId breakpointId |
| |
| # Sets JavaScript breakpoint at given location specified either by URL or URL regex. Once this |
| # command is issued, all existing parsed scripts will have breakpoints resolved and returned in |
| # `locations` property. Further matching script parsing will result in subsequent |
| # `breakpointResolved` events issued. This logical breakpoint will survive page reloads. |
| command setBreakpointByUrl |
| parameters |
| # Line number to set breakpoint at. |
| integer lineNumber |
| # URL of the resources to set breakpoint on. |
| optional string url |
| # Regex pattern for the URLs of the resources to set breakpoints on. Either `url` or |
| # `urlRegex` must be specified. |
| optional string urlRegex |
| # Script hash of the resources to set breakpoint on. |
| optional string scriptHash |
| # Offset in the line to set breakpoint at. |
| optional integer columnNumber |
| # Expression to use as a breakpoint condition. When specified, debugger will only stop on the |
| # breakpoint if this expression evaluates to true. |
| optional string condition |
| returns |
| # Id of the created breakpoint for further reference. |
| BreakpointId breakpointId |
| # List of the locations this breakpoint resolved into upon addition. |
| array of Location locations |
| |
| # Sets JavaScript breakpoint before each call to the given function. |
| # If another function was created from the same source as a given one, |
| # calling it will also trigger the breakpoint. |
| experimental command setBreakpointOnFunctionCall |
| parameters |
| # Function object id. |
| Runtime.RemoteObjectId objectId |
| # Expression to use as a breakpoint condition. When specified, debugger will |
| # stop on the breakpoint if this expression evaluates to true. |
| optional string condition |
| returns |
| # Id of the created breakpoint for further reference. |
| BreakpointId breakpointId |
| |
| # Activates / deactivates all breakpoints on the page. |
| command setBreakpointsActive |
| parameters |
| # New value for breakpoints active state. |
| boolean active |
| |
| # Defines pause on exceptions state. Can be set to stop on all exceptions, uncaught exceptions or |
| # no exceptions. Initial pause on exceptions state is `none`. |
| command setPauseOnExceptions |
| parameters |
| # Pause on exceptions mode. |
| enum state |
| none |
| uncaught |
| all |
| |
| # Changes return value in top frame. Available only at return break position. |
| experimental command setReturnValue |
| parameters |
| # New return value. |
| Runtime.CallArgument newValue |
| |
| # Edits JavaScript source live. |
| command setScriptSource |
| parameters |
| # Id of the script to edit. |
| Runtime.ScriptId scriptId |
| # New content of the script. |
| string scriptSource |
| # If true the change will not actually be applied. Dry run may be used to get result |
| # description without actually modifying the code. |
| optional boolean dryRun |
| returns |
| # New stack trace in case editing has happened while VM was stopped. |
| optional array of CallFrame callFrames |
| # Whether current call stack was modified after applying the changes. |
| optional boolean stackChanged |
| # Async stack trace, if any. |
| optional Runtime.StackTrace asyncStackTrace |
| # Async stack trace, if any. |
| experimental optional Runtime.StackTraceId asyncStackTraceId |
| # Exception details if any. |
| optional Runtime.ExceptionDetails exceptionDetails |
| |
| # Makes page not interrupt on any pauses (breakpoint, exception, dom exception etc). |
| command setSkipAllPauses |
| parameters |
| # New value for skip pauses state. |
| boolean skip |
| |
| # Changes value of variable in a callframe. Object-based scopes are not supported and must be |
| # mutated manually. |
| command setVariableValue |
| parameters |
| # 0-based number of scope as was listed in scope chain. Only 'local', 'closure' and 'catch' |
| # scope types are allowed. Other scopes could be manipulated manually. |
| integer scopeNumber |
| # Variable name. |
| string variableName |
| # New variable value. |
| Runtime.CallArgument newValue |
| # Id of callframe that holds variable. |
| CallFrameId callFrameId |
| |
| # Steps into the function call. |
| command stepInto |
| parameters |
| # Debugger will issue additional Debugger.paused notification if any async task is scheduled |
| # before next pause. |
| experimental optional boolean breakOnAsyncCall |
| |
| # Steps out of the function call. |
| command stepOut |
| |
| # Steps over the statement. |
| command stepOver |
| |
| # Fired when breakpoint is resolved to an actual script and location. |
| event breakpointResolved |
| parameters |
| # Breakpoint unique identifier. |
| BreakpointId breakpointId |
| # Actual breakpoint location. |
| Location location |
| |
| # Fired when the virtual machine stopped on breakpoint or exception or any other stop criteria. |
| event paused |
| parameters |
| # Call stack the virtual machine stopped on. |
| array of CallFrame callFrames |
| # Pause reason. |
| enum reason |
| ambiguous |
| assert |
| debugCommand |
| DOM |
| EventListener |
| exception |
| instrumentation |
| OOM |
| other |
| promiseRejection |
| XHR |
| # Object containing break-specific auxiliary properties. |
| optional object data |
| # Hit breakpoints IDs |
| optional array of string hitBreakpoints |
| # Async stack trace, if any. |
| optional Runtime.StackTrace asyncStackTrace |
| # Async stack trace, if any. |
| experimental optional Runtime.StackTraceId asyncStackTraceId |
| # Just scheduled async call will have this stack trace as parent stack during async execution. |
| # This field is available only after `Debugger.stepInto` call with `breakOnAsynCall` flag. |
| experimental optional Runtime.StackTraceId asyncCallStackTraceId |
| |
| # Fired when the virtual machine resumed execution. |
| event resumed |
| |
| # Fired when virtual machine fails to parse the script. |
| event scriptFailedToParse |
| parameters |
| # Identifier of the script parsed. |
| Runtime.ScriptId scriptId |
| # URL or name of the script parsed (if any). |
| string url |
| # Line offset of the script within the resource with given URL (for script tags). |
| integer startLine |
| # Column offset of the script within the resource with given URL. |
| integer startColumn |
| # Last line of the script. |
| integer endLine |
| # Length of the last line of the script. |
| integer endColumn |
| # Specifies script creation context. |
| Runtime.ExecutionContextId executionContextId |
| # Content hash of the script. |
| string hash |
| # Embedder-specific auxiliary data. |
| optional object executionContextAuxData |
| # URL of source map associated with script (if any). |
| optional string sourceMapURL |
| # True, if this script has sourceURL. |
| optional boolean hasSourceURL |
| # True, if this script is ES6 module. |
| optional boolean isModule |
| # This script length. |
| optional integer length |
| # JavaScript top stack frame of where the script parsed event was triggered if available. |
| experimental optional Runtime.StackTrace stackTrace |
| |
| # Fired when virtual machine parses script. This event is also fired for all known and uncollected |
| # scripts upon enabling debugger. |
| event scriptParsed |
| parameters |
| # Identifier of the script parsed. |
| Runtime.ScriptId scriptId |
| # URL or name of the script parsed (if any). |
| string url |
| # Line offset of the script within the resource with given URL (for script tags). |
| integer startLine |
| # Column offset of the script within the resource with given URL. |
| integer startColumn |
| # Last line of the script. |
| integer endLine |
| # Length of the last line of the script. |
| integer endColumn |
| # Specifies script creation context. |
| Runtime.ExecutionContextId executionContextId |
| # Content hash of the script. |
| string hash |
| # Embedder-specific auxiliary data. |
| optional object executionContextAuxData |
| # True, if this script is generated as a result of the live edit operation. |
| experimental optional boolean isLiveEdit |
| # URL of source map associated with script (if any). |
| optional string sourceMapURL |
| # True, if this script has sourceURL. |
| optional boolean hasSourceURL |
| # True, if this script is ES6 module. |
| optional boolean isModule |
| # This script length. |
| optional integer length |
| # JavaScript top stack frame of where the script parsed event was triggered if available. |
| experimental optional Runtime.StackTrace stackTrace |
| |
| experimental domain HeapProfiler |
| depends on Runtime |
| |
| # Heap snapshot object id. |
| type HeapSnapshotObjectId extends string |
| |
| # Sampling Heap Profile node. Holds callsite information, allocation statistics and child nodes. |
| type SamplingHeapProfileNode extends object |
| properties |
| # Function location. |
| Runtime.CallFrame callFrame |
| # Allocations size in bytes for the node excluding children. |
| number selfSize |
| # Node id. Ids are unique across all profiles collected between startSampling and stopSampling. |
| integer id |
| # Child nodes. |
| array of SamplingHeapProfileNode children |
| |
| # A single sample from a sampling profile. |
| type SamplingHeapProfileSample extends object |
| properties |
| # Allocation size in bytes attributed to the sample. |
| number size |
| # Id of the corresponding profile tree node. |
| integer nodeId |
| # Time-ordered sample ordinal number. It is unique across all profiles retrieved |
| # between startSampling and stopSampling. |
| number ordinal |
| |
| # Sampling profile. |
| type SamplingHeapProfile extends object |
| properties |
| SamplingHeapProfileNode head |
| array of SamplingHeapProfileSample samples |
| |
| # Enables console to refer to the node with given id via $x (see Command Line API for more details |
| # $x functions). |
| command addInspectedHeapObject |
| parameters |
| # Heap snapshot object id to be accessible by means of $x command line API. |
| HeapSnapshotObjectId heapObjectId |
| |
| command collectGarbage |
| |
| command disable |
| |
| command enable |
| |
| command getHeapObjectId |
| parameters |
| # Identifier of the object to get heap object id for. |
| Runtime.RemoteObjectId objectId |
| returns |
| # Id of the heap snapshot object corresponding to the passed remote object id. |
| HeapSnapshotObjectId heapSnapshotObjectId |
| |
| command getObjectByHeapObjectId |
| parameters |
| HeapSnapshotObjectId objectId |
| # Symbolic group name that can be used to release multiple objects. |
| optional string objectGroup |
| returns |
| # Evaluation result. |
| Runtime.RemoteObject result |
| |
| command getSamplingProfile |
| returns |
| # Return the sampling profile being collected. |
| SamplingHeapProfile profile |
| |
| command startSampling |
| parameters |
| # Average sample interval in bytes. Poisson distribution is used for the intervals. The |
| # default value is 32768 bytes. |
| optional number samplingInterval |
| |
| command startTrackingHeapObjects |
| parameters |
| optional boolean trackAllocations |
| |
| command stopSampling |
| returns |
| # Recorded sampling heap profile. |
| SamplingHeapProfile profile |
| |
| command stopTrackingHeapObjects |
| parameters |
| # If true 'reportHeapSnapshotProgress' events will be generated while snapshot is being taken |
| # when the tracking is stopped. |
| optional boolean reportProgress |
| |
| command takeHeapSnapshot |
| parameters |
| # If true 'reportHeapSnapshotProgress' events will be generated while snapshot is being taken. |
| optional boolean reportProgress |
| |
| event addHeapSnapshotChunk |
| parameters |
| string chunk |
| |
| # If heap objects tracking has been started then backend may send update for one or more fragments |
| event heapStatsUpdate |
| parameters |
| # An array of triplets. Each triplet describes a fragment. The first integer is the fragment |
| # index, the second integer is a total count of objects for the fragment, the third integer is |
| # a total size of the objects for the fragment. |
| array of integer statsUpdate |
| |
| # If heap objects tracking has been started then backend regularly sends a current value for last |
| # seen object id and corresponding timestamp. If the were changes in the heap since last event |
| # then one or more heapStatsUpdate events will be sent before a new lastSeenObjectId event. |
| event lastSeenObjectId |
| parameters |
| integer lastSeenObjectId |
| number timestamp |
| |
| event reportHeapSnapshotProgress |
| parameters |
| integer done |
| integer total |
| optional boolean finished |
| |
| event resetProfiles |
| |
| domain Profiler |
| depends on Runtime |
| depends on Debugger |
| |
| # Profile node. Holds callsite information, execution statistics and child nodes. |
| type ProfileNode extends object |
| properties |
| # Unique id of the node. |
| integer id |
| # Function location. |
| Runtime.CallFrame callFrame |
| # Number of samples where this node was on top of the call stack. |
| optional integer hitCount |
| # Child node ids. |
| optional array of integer children |
| # The reason of being not optimized. The function may be deoptimized or marked as don't |
| # optimize. |
| optional string deoptReason |
| # An array of source position ticks. |
| optional array of PositionTickInfo positionTicks |
| |
| # Profile. |
| type Profile extends object |
| properties |
| # The list of profile nodes. First item is the root node. |
| array of ProfileNode nodes |
| # Profiling start timestamp in microseconds. |
| number startTime |
| # Profiling end timestamp in microseconds. |
| number endTime |
| # Ids of samples top nodes. |
| optional array of integer samples |
| # Time intervals between adjacent samples in microseconds. The first delta is relative to the |
| # profile startTime. |
| optional array of integer timeDeltas |
| |
| # Specifies a number of samples attributed to a certain source position. |
| type PositionTickInfo extends object |
| properties |
| # Source line number (1-based). |
| integer line |
| # Number of samples attributed to the source line. |
| integer ticks |
| |
| # Coverage data for a source range. |
| type CoverageRange extends object |
| properties |
| # JavaScript script source offset for the range start. |
| integer startOffset |
| # JavaScript script source offset for the range end. |
| integer endOffset |
| # Collected execution count of the source range. |
| integer count |
| |
| # Coverage data for a JavaScript function. |
| type FunctionCoverage extends object |
| properties |
| # JavaScript function name. |
| string functionName |
| # Source ranges inside the function with coverage data. |
| array of CoverageRange ranges |
| # Whether coverage data for this function has block granularity. |
| boolean isBlockCoverage |
| |
| # Coverage data for a JavaScript script. |
| type ScriptCoverage extends object |
| properties |
| # JavaScript script id. |
| Runtime.ScriptId scriptId |
| # JavaScript script name or url. |
| string url |
| # Functions contained in the script that has coverage data. |
| array of FunctionCoverage functions |
| |
| # Describes a type collected during runtime. |
| experimental type TypeObject extends object |
| properties |
| # Name of a type collected with type profiling. |
| string name |
| |
| # Source offset and types for a parameter or return value. |
| experimental type TypeProfileEntry extends object |
| properties |
| # Source offset of the parameter or end of function for return values. |
| integer offset |
| # The types for this parameter or return value. |
| array of TypeObject types |
| |
| # Type profile data collected during runtime for a JavaScript script. |
| experimental type ScriptTypeProfile extends object |
| properties |
| # JavaScript script id. |
| Runtime.ScriptId scriptId |
| # JavaScript script name or url. |
| string url |
| # Type profile entries for parameters and return values of the functions in the script. |
| array of TypeProfileEntry entries |
| |
| command disable |
| |
| command enable |
| |
| # Collect coverage data for the current isolate. The coverage data may be incomplete due to |
| # garbage collection. |
| command getBestEffortCoverage |
| returns |
| # Coverage data for the current isolate. |
| array of ScriptCoverage result |
| |
| # Changes CPU profiler sampling interval. Must be called before CPU profiles recording started. |
| command setSamplingInterval |
| parameters |
| # New sampling interval in microseconds. |
| integer interval |
| |
| command start |
| |
| # Enable precise code coverage. Coverage data for JavaScript executed before enabling precise code |
| # coverage may be incomplete. Enabling prevents running optimized code and resets execution |
| # counters. |
| command startPreciseCoverage |
| parameters |
| # Collect accurate call counts beyond simple 'covered' or 'not covered'. |
| optional boolean callCount |
| # Collect block-based coverage. |
| optional boolean detailed |
| |
| # Enable type profile. |
| experimental command startTypeProfile |
| |
| command stop |
| returns |
| # Recorded profile. |
| Profile profile |
| |
| # Disable precise code coverage. Disabling releases unnecessary execution count records and allows |
| # executing optimized code. |
| command stopPreciseCoverage |
| |
| # Disable type profile. Disabling releases type profile data collected so far. |
| experimental command stopTypeProfile |
| |
| # Collect coverage data for the current isolate, and resets execution counters. Precise code |
| # coverage needs to have started. |
| command takePreciseCoverage |
| returns |
| # Coverage data for the current isolate. |
| array of ScriptCoverage result |
| |
| # Collect type profile. |
| experimental command takeTypeProfile |
| returns |
| # Type profile for all scripts since startTypeProfile() was turned on. |
| array of ScriptTypeProfile result |
| |
| event consoleProfileFinished |
| parameters |
| string id |
| # Location of console.profileEnd(). |
| Debugger.Location location |
| Profile profile |
| # Profile title passed as an argument to console.profile(). |
| optional string title |
| |
| # Sent when new profile recording is started using console.profile() call. |
| event consoleProfileStarted |
| parameters |
| string id |
| # Location of console.profile(). |
| Debugger.Location location |
| # Profile title passed as an argument to console.profile(). |
| optional string title |
| |
| # Runtime domain exposes JavaScript runtime by means of remote evaluation and mirror objects. |
| # Evaluation results are returned as mirror object that expose object type, string representation |
| # and unique identifier that can be used for further object reference. Original objects are |
| # maintained in memory unless they are either explicitly released or are released along with the |
| # other objects in their object group. |
| domain Runtime |
| |
| # Unique script identifier. |
| type ScriptId extends string |
| |
| # Unique object identifier. |
| type RemoteObjectId extends string |
| |
| # Primitive value which cannot be JSON-stringified. Includes values `-0`, `NaN`, `Infinity`, |
| # `-Infinity`, and bigint literals. |
| type UnserializableValue extends string |
| |
| # Mirror object referencing original JavaScript object. |
| type RemoteObject extends object |
| properties |
| # Object type. |
| enum type |
| object |
| function |
| undefined |
| string |
| number |
| boolean |
| symbol |
| bigint |
| # Object subtype hint. Specified for `object` type values only. |
| optional enum subtype |
| array |
| null |
| node |
| regexp |
| date |
| map |
| set |
| weakmap |
| weakset |
| iterator |
| generator |
| error |
| proxy |
| promise |
| typedarray |
| arraybuffer |
| dataview |
| # Object class (constructor) name. Specified for `object` type values only. |
| optional string className |
| # Remote object value in case of primitive values or JSON values (if it was requested). |
| optional any value |
| # Primitive value which can not be JSON-stringified does not have `value`, but gets this |
| # property. |
| optional UnserializableValue unserializableValue |
| # String representation of the object. |
| optional string description |
| # Unique object identifier (for non-primitive values). |
| optional RemoteObjectId objectId |
| # Preview containing abbreviated property values. Specified for `object` type values only. |
| experimental optional ObjectPreview preview |
| experimental optional CustomPreview customPreview |
| |
| experimental type CustomPreview extends object |
| properties |
| # The JSON-stringified result of formatter.header(object, config) call. |
| # It contains json ML array that represents RemoteObject. |
| string header |
| # If formatter returns true as a result of formatter.hasBody call then bodyGetterId will |
| # contain RemoteObjectId for the function that returns result of formatter.body(object, config) call. |
| # The result value is json ML array. |
| optional RemoteObjectId bodyGetterId |
| |
| # Object containing abbreviated remote object value. |
| experimental type ObjectPreview extends object |
| properties |
| # Object type. |
| enum type |
| object |
| function |
| undefined |
| string |
| number |
| boolean |
| symbol |
| bigint |
| # Object subtype hint. Specified for `object` type values only. |
| optional enum subtype |
| array |
| null |
| node |
| regexp |
| date |
| map |
| set |
| weakmap |
| weakset |
| iterator |
| generator |
| error |
| # String representation of the object. |
| optional string description |
| # True iff some of the properties or entries of the original object did not fit. |
| boolean overflow |
| # List of the properties. |
| array of PropertyPreview properties |
| # List of the entries. Specified for `map` and `set` subtype values only. |
| optional array of EntryPreview entries |
| |
| experimental type PropertyPreview extends object |
| properties |
| # Property name. |
| string name |
| # Object type. Accessor means that the property itself is an accessor property. |
| enum type |
| object |
| function |
| undefined |
| string |
| number |
| boolean |
| symbol |
| accessor |
| bigint |
| # User-friendly property value string. |
| optional string value |
| # Nested value preview. |
| optional ObjectPreview valuePreview |
| # Object subtype hint. Specified for `object` type values only. |
| optional enum subtype |
| array |
| null |
| node |
| regexp |
| date |
| map |
| set |
| weakmap |
| weakset |
| iterator |
| generator |
| error |
| |
| experimental type EntryPreview extends object |
| properties |
| # Preview of the key. Specified for map-like collection entries. |
| optional ObjectPreview key |
| # Preview of the value. |
| ObjectPreview value |
| |
| # Object property descriptor. |
| type PropertyDescriptor extends object |
| properties |
| # Property name or symbol description. |
| string name |
| # The value associated with the property. |
| optional RemoteObject value |
| # True if the value associated with the property may be changed (data descriptors only). |
| optional boolean writable |
| # A function which serves as a getter for the property, or `undefined` if there is no getter |
| # (accessor descriptors only). |
| optional RemoteObject get |
| # A function which serves as a setter for the property, or `undefined` if there is no setter |
| # (accessor descriptors only). |
| optional RemoteObject set |
| # True if the type of this property descriptor may be changed and if the property may be |
| # deleted from the corresponding object. |
| boolean configurable |
| # True if this property shows up during enumeration of the properties on the corresponding |
| # object. |
| boolean enumerable |
| # True if the result was thrown during the evaluation. |
| optional boolean wasThrown |
| # True if the property is owned for the object. |
| optional boolean isOwn |
| # Property symbol object, if the property is of the `symbol` type. |
| optional RemoteObject symbol |
| |
| # Object internal property descriptor. This property isn't normally visible in JavaScript code. |
| type InternalPropertyDescriptor extends object |
| properties |
| # Conventional property name. |
| string name |
| # The value associated with the property. |
| optional RemoteObject value |
| |
| # Object private field descriptor. |
| experimental type PrivatePropertyDescriptor extends object |
| properties |
| # Private property name. |
| string name |
| # The value associated with the private property. |
| RemoteObject value |
| |
| # Represents function call argument. Either remote object id `objectId`, primitive `value`, |
| # unserializable primitive value or neither of (for undefined) them should be specified. |
| type CallArgument extends object |
| properties |
| # Primitive value or serializable javascript object. |
| optional any value |
| # Primitive value which can not be JSON-stringified. |
| optional UnserializableValue unserializableValue |
| # Remote object handle. |
| optional RemoteObjectId objectId |
| |
| # Id of an execution context. |
| type ExecutionContextId extends integer |
| |
| # Description of an isolated world. |
| type ExecutionContextDescription extends object |
| properties |
| # Unique id of the execution context. It can be used to specify in which execution context |
| # script evaluation should be performed. |
| ExecutionContextId id |
| # Execution context origin. |
| string origin |
| # Human readable name describing given context. |
| string name |
| # Embedder-specific auxiliary data. |
| optional object auxData |
| |
| # Detailed information about exception (or error) that was thrown during script compilation or |
| # execution. |
| type ExceptionDetails extends object |
| properties |
| # Exception id. |
| integer exceptionId |
| # Exception text, which should be used together with exception object when available. |
| string text |
| # Line number of the exception location (0-based). |
| integer lineNumber |
| # Column number of the exception location (0-based). |
| integer columnNumber |
| # Script ID of the exception location. |
| optional ScriptId scriptId |
| # URL of the exception location, to be used when the script was not reported. |
| optional string url |
| # JavaScript stack trace if available. |
| optional StackTrace stackTrace |
| # Exception object if available. |
| optional RemoteObject exception |
| # Identifier of the context where exception happened. |
| optional ExecutionContextId executionContextId |
| |
| # Number of milliseconds since epoch. |
| type Timestamp extends number |
| |
| # Number of milliseconds. |
| type TimeDelta extends number |
| |
| # Stack entry for runtime errors and assertions. |
| type CallFrame extends object |
| properties |
| # JavaScript function name. |
| string functionName |
| # JavaScript script id. |
| ScriptId scriptId |
| # JavaScript script name or url. |
| string url |
| # JavaScript script line number (0-based). |
| integer lineNumber |
| # JavaScript script column number (0-based). |
| integer columnNumber |
| |
| # Call frames for assertions or error messages. |
| type StackTrace extends object |
| properties |
| # String label of this stack trace. For async traces this may be a name of the function that |
| # initiated the async call. |
| optional string description |
| # JavaScript function name. |
| array of CallFrame callFrames |
| # Asynchronous JavaScript stack trace that preceded this stack, if available. |
| optional StackTrace parent |
| # Asynchronous JavaScript stack trace that preceded this stack, if available. |
| experimental optional StackTraceId parentId |
| |
| # Unique identifier of current debugger. |
| experimental type UniqueDebuggerId extends string |
| |
| # If `debuggerId` is set stack trace comes from another debugger and can be resolved there. This |
| # allows to track cross-debugger calls. See `Runtime.StackTrace` and `Debugger.paused` for usages. |
| experimental type StackTraceId extends object |
| properties |
| string id |
| optional UniqueDebuggerId debuggerId |
| |
| # Add handler to promise with given promise object id. |
| command awaitPromise |
| parameters |
| # Identifier of the promise. |
| RemoteObjectId promiseObjectId |
| # Whether the result is expected to be a JSON object that should be sent by value. |
| optional boolean returnByValue |
| # Whether preview should be generated for the result. |
| optional boolean generatePreview |
| returns |
| # Promise result. Will contain rejected value if promise was rejected. |
| RemoteObject result |
| # Exception details if stack strace is available. |
| optional ExceptionDetails exceptionDetails |
| |
| # Calls function with given declaration on the given object. Object group of the result is |
| # inherited from the target object. |
| command callFunctionOn |
| parameters |
| # Declaration of the function to call. |
| string functionDeclaration |
| # Identifier of the object to call function on. Either objectId or executionContextId should |
| # be specified. |
| optional RemoteObjectId objectId |
| # Call arguments. All call arguments must belong to the same JavaScript world as the target |
| # object. |
| optional array of CallArgument arguments |
| # In silent mode exceptions thrown during evaluation are not reported and do not pause |
| # execution. Overrides `setPauseOnException` state. |
| optional boolean silent |
| # Whether the result is expected to be a JSON object which should be sent by value. |
| optional boolean returnByValue |
| # Whether preview should be generated for the result. |
| experimental optional boolean generatePreview |
| # Whether execution should be treated as initiated by user in the UI. |
| optional boolean userGesture |
| # Whether execution should `await` for resulting value and return once awaited promise is |
| # resolved. |
| optional boolean awaitPromise |
| # Specifies execution context which global object will be used to call function on. Either |
| # executionContextId or objectId should be specified. |
| optional ExecutionContextId executionContextId |
| # Symbolic group name that can be used to release multiple objects. If objectGroup is not |
| # specified and objectId is, objectGroup will be inherited from object. |
| optional string objectGroup |
| returns |
| # Call result. |
| RemoteObject result |
| # Exception details. |
| optional ExceptionDetails exceptionDetails |
| |
| # Compiles expression. |
| command compileScript |
| parameters |
| # Expression to compile. |
| string expression |
| # Source url to be set for the script. |
| string sourceURL |
| # Specifies whether the compiled script should be persisted. |
| boolean persistScript |
| # Specifies in which execution context to perform script run. If the parameter is omitted the |
| # evaluation will be performed in the context of the inspected page. |
| optional ExecutionContextId executionContextId |
| returns |
| # Id of the script. |
| optional ScriptId scriptId |
| # Exception details. |
| optional ExceptionDetails exceptionDetails |
| |
| # Disables reporting of execution contexts creation. |
| command disable |
| |
| # Discards collected exceptions and console API calls. |
| command discardConsoleEntries |
| |
| # Enables reporting of execution contexts creation by means of `executionContextCreated` event. |
| # When the reporting gets enabled the event will be sent immediately for each existing execution |
| # context. |
| command enable |
| |
| # Evaluates expression on global object. |
| command evaluate |
| parameters |
| # Expression to evaluate. |
| string expression |
| # Symbolic group name that can be used to release multiple objects. |
| optional string objectGroup |
| # Determines whether Command Line API should be available during the evaluation. |
| optional boolean includeCommandLineAPI |
| # In silent mode exceptions thrown during evaluation are not reported and do not pause |
| # execution. Overrides `setPauseOnException` state. |
| optional boolean silent |
| # Specifies in which execution context to perform evaluation. If the parameter is omitted the |
| # evaluation will be performed in the context of the inspected page. |
| optional ExecutionContextId contextId |
| # Whether the result is expected to be a JSON object that should be sent by value. |
| optional boolean returnByValue |
| # Whether preview should be generated for the result. |
| experimental optional boolean generatePreview |
| # Whether execution should be treated as initiated by user in the UI. |
| optional boolean userGesture |
| # Whether execution should `await` for resulting value and return once awaited promise is |
| # resolved. |
| optional boolean awaitPromise |
| # Whether to throw an exception if side effect cannot be ruled out during evaluation. |
| experimental optional boolean throwOnSideEffect |
| # Terminate execution after timing out (number of milliseconds). |
| experimental optional TimeDelta timeout |
| returns |
| # Evaluation result. |
| RemoteObject result |
| # Exception details. |
| optional ExceptionDetails exceptionDetails |
| |
| # Returns the isolate id. |
| experimental command getIsolateId |
| returns |
| # The isolate id. |
| string id |
| |
| # Returns the JavaScript heap usage. |
| # It is the total usage of the corresponding isolate not scoped to a particular Runtime. |
| experimental command getHeapUsage |
| returns |
| # Used heap size in bytes. |
| number usedSize |
| # Allocated heap size in bytes. |
| number totalSize |
| |
| # Returns properties of a given object. Object group of the result is inherited from the target |
| # object. |
| command getProperties |
| parameters |
| # Identifier of the object to return properties for. |
| RemoteObjectId objectId |
| # If true, returns properties belonging only to the element itself, not to its prototype |
| # chain. |
| optional boolean ownProperties |
| # If true, returns accessor properties (with getter/setter) only; internal properties are not |
| # returned either. |
| experimental optional boolean accessorPropertiesOnly |
| # Whether preview should be generated for the results. |
| experimental optional boolean generatePreview |
| returns |
| # Object properties. |
| array of PropertyDescriptor result |
| # Internal object properties (only of the element itself). |
| optional array of InternalPropertyDescriptor internalProperties |
| # Object private properties. |
| experimental optional array of PrivatePropertyDescriptor privateProperties |
| # Exception details. |
| optional ExceptionDetails exceptionDetails |
| |
| # Returns all let, const and class variables from global scope. |
| command globalLexicalScopeNames |
| parameters |
| # Specifies in which execution context to lookup global scope variables. |
| optional ExecutionContextId executionContextId |
| returns |
| array of string names |
| |
| command queryObjects |
| parameters |
| # Identifier of the prototype to return objects for. |
| RemoteObjectId prototypeObjectId |
| # Symbolic group name that can be used to release the results. |
| optional string objectGroup |
| returns |
| # Array with objects. |
| RemoteObject objects |
| |
| # Releases remote object with given id. |
| command releaseObject |
| parameters |
| # Identifier of the object to release. |
| RemoteObjectId objectId |
| |
| # Releases all remote objects that belong to a given group. |
| command releaseObjectGroup |
| parameters |
| # Symbolic object group name. |
| string objectGroup |
| |
| # Tells inspected instance to run if it was waiting for debugger to attach. |
| command runIfWaitingForDebugger |
| |
| # Runs script with given id in a given context. |
| command runScript |
| parameters |
| # Id of the script to run. |
| ScriptId scriptId |
| # Specifies in which execution context to perform script run. If the parameter is omitted the |
| # evaluation will be performed in the context of the inspected page. |
| optional ExecutionContextId executionContextId |
| # Symbolic group name that can be used to release multiple objects. |
| optional string objectGroup |
| # In silent mode exceptions thrown during evaluation are not reported and do not pause |
| # execution. Overrides `setPauseOnException` state. |
| optional boolean silent |
| # Determines whether Command Line API should be available during the evaluation. |
| optional boolean includeCommandLineAPI |
| # Whether the result is expected to be a JSON object which should be sent by value. |
| optional boolean returnByValue |
| # Whether preview should be generated for the result. |
| optional boolean generatePreview |
| # Whether execution should `await` for resulting value and return once awaited promise is |
| # resolved. |
| optional boolean awaitPromise |
| returns |
| # Run result. |
| RemoteObject result |
| # Exception details. |
| optional ExceptionDetails exceptionDetails |
| |
| # Enables or disables async call stacks tracking. |
| command setAsyncCallStackDepth |
| redirect Debugger |
| parameters |
| # Maximum depth of async call stacks. Setting to `0` will effectively disable collecting async |
| # call stacks (default). |
| integer maxDepth |
| |
| experimental command setCustomObjectFormatterEnabled |
| parameters |
| boolean enabled |
| |
| experimental command setMaxCallStackSizeToCapture |
| parameters |
| integer size |
| |
| # Terminate current or next JavaScript execution. |
| # Will cancel the termination when the outer-most script execution ends. |
| experimental command terminateExecution |
| |
| # If executionContextId is empty, adds binding with the given name on the |
| # global objects of all inspected contexts, including those created later, |
| # bindings survive reloads. |
| # If executionContextId is specified, adds binding only on global object of |
| # given execution context. |
| # Binding function takes exactly one argument, this argument should be string, |
| # in case of any other input, function throws an exception. |
| # Each binding function call produces Runtime.bindingCalled notification. |
| experimental command addBinding |
| parameters |
| string name |
| optional ExecutionContextId executionContextId |
| |
| # This method does not remove binding function from global object but |
| # unsubscribes current runtime agent from Runtime.bindingCalled notifications. |
| experimental command removeBinding |
| parameters |
| string name |
| |
| # Notification is issued every time when binding is called. |
| experimental event bindingCalled |
| parameters |
| string name |
| string payload |
| # Identifier of the context where the call was made. |
| ExecutionContextId executionContextId |
| |
| # Issued when console API was called. |
| event consoleAPICalled |
| parameters |
| # Type of the call. |
| enum type |
| log |
| debug |
| info |
| error |
| warning |
| dir |
| dirxml |
| table |
| trace |
| clear |
| startGroup |
| startGroupCollapsed |
| endGroup |
| assert |
| profile |
| profileEnd |
| count |
| timeEnd |
| # Call arguments. |
| array of RemoteObject args |
| # Identifier of the context where the call was made. |
| ExecutionContextId executionContextId |
| # Call timestamp. |
| Timestamp timestamp |
| # Stack trace captured when the call was made. The async stack chain is automatically reported for |
| # the following call types: `assert`, `error`, `trace`, `warning`. For other types the async call |
| # chain can be retrieved using `Debugger.getStackTrace` and `stackTrace.parentId` field. |
| optional StackTrace stackTrace |
| # Console context descriptor for calls on non-default console context (not console.*): |
| # 'anonymous#unique-logger-id' for call on unnamed context, 'name#unique-logger-id' for call |
| # on named context. |
| experimental optional string context |
| |
| # Issued when unhandled exception was revoked. |
| event exceptionRevoked |
| parameters |
| # Reason describing why exception was revoked. |
| string reason |
| # The id of revoked exception, as reported in `exceptionThrown`. |
| integer exceptionId |
| |
| # Issued when exception was thrown and unhandled. |
| event exceptionThrown |
| parameters |
| # Timestamp of the exception. |
| Timestamp timestamp |
| ExceptionDetails exceptionDetails |
| |
| # Issued when new execution context is created. |
| event executionContextCreated |
| parameters |
| # A newly created execution context. |
| ExecutionContextDescription context |
| |
| # Issued when execution context is destroyed. |
| event executionContextDestroyed |
| parameters |
| # Id of the destroyed context |
| ExecutionContextId executionContextId |
| |
| # Issued when all executionContexts were cleared in browser |
| event executionContextsCleared |
| |
| # Issued when object should be inspected (for example, as a result of inspect() command line API |
| # call). |
| event inspectRequested |
| parameters |
| RemoteObject object |
| object hints |
| |
| # This domain is deprecated. |
| deprecated domain Schema |
| |
| # Description of the protocol domain. |
| type Domain extends object |
| properties |
| # Domain name. |
| string name |
| # Domain version. |
| string version |
| |
| # Returns supported domains. |
| command getDomains |
| returns |
| # List of supported domains. |
| array of Domain domains |