The Resource inspector holds tools for configuring resources (typically selected in Resource view), including descriptive details, scheduling, cost, and information about their task assignments.
Explore the world of Mac. Check out MacBook Pro, MacBook Air, iMac, Mac mini, and more. Visit the Apple site to learn, buy, and get support. Basic Test for iMac, Mac mini and Macbook Pro 3RMacRepair.com. SlimBatteryMonitor is a replacement power gauge for Apple's Mac OS X that tracks both laptop batteries and many UPS batteries. SystemLoad 2.1 2013-08-07 2.8 MB Freeware OS X 10.6/10.7/10.8/10.9 4583 1 Diagnostic application assisting you in the detection of cooling or power supply problems.
Resource Info
The Resource Info section of the Resource inspector contains all of the vital details about a staff member, piece of equipment, or raw material used in completing your project.
Name—The name of the resource as it appears in the resource list.
Email—A staff resource can be assigned a unique email address that serves as an identifier across projects. If the resource is associated with a macOS Contacts card, you can use the dropdown menu to pick which address to use.
Gear Menu—Use the gear menu to associate this resource with a Contacts card, open the card in Contacts, or send an email.
Type—Use this segmented control to indicate the resource type: Staff, Tool, Material, or Group.
Units—The amount of a tool or staff member’s time dedicated to the project (relative to their full time schedule) is expressed by the resource’s Units value.
For materials, Units describes the quantity of material used (based on the number of tasks the resource is assigned to) instead.
Efficiency—The amount of effort-per-time a resource contributes to tasks to which it is assigned.
Start,End—These dates determine when the resource is available. Leaving either date empty means that it lies outside the scope of the project.
Cost per Use, Cost per Hour—The monetary cost incurred each time the resource is assigned to a task, and the monetary cost of each hour of effort assigned to the resource, respectively.
Total Uses, Total Hours, Total Cost—The number of times this resource is assigned to a task, the sum of the effort of all tasks the resource is assigned to, and the combined cost of all uses and all hours for this resource. These cannot be edited directly.
Assignments
Use the Assignments inspector to get an overview of all the tasks that a particular resource is assigned to (or if multiple resources are selected, the intersection of their task assignments).
Number—The task’s hierarchical number.
Task Title—The task’s title. Double-click a task’s title to switch to Gantt view with that task selected in the Task inspector.
Units Assigned—The percentage of the resource’s effort that is devoted to the task. By default each task receives 100% of the resource’s effort when it is working on that task; edit this value to indicate that less effort should be spent.
Add/Remove Tasks—Use the Plus and Minus buttons to add or remove task assignments for the resource.
Hide Completed Tasks—Select this checkbox to hide tasks from the list that have reached 100% completion.
This guide will help you get started debugging your Node.js apps and scripts.
Enable Inspector
When started with the --inspect
switch, a Node.js process listens for adebugging client. By default, it will listen at host and port 127.0.0.1:9229.Each process is also assigned a unique UUID.
Inspector clients must know and specify host address, port, and UUID to connect.A full URL will look something likews://127.0.0.1:9229/0f2c936f-b1cd-4ac9-aab3-f63b0f33d55e
.
Node.js will also start listening for debugging messages if it receives aSIGUSR1
signal. (SIGUSR1
is not available on Windows.) In Node.js 7 andearlier, this activates the legacy Debugger API. In Node.js 8 and later, it willactivate the Inspector API.
Security Implications
Since the debugger has full access to the Node.js execution environment, amalicious actor able to connect to this port may be able to execute arbitrarycode on behalf of the Node.js process. It is important to understand the securityimplications of exposing the debugger port on public and private networks.
Exposing the debug port publicly is unsafe
If the debugger is bound to a public IP address, or to 0.0.0.0, any clients thatcan reach your IP address will be able to connect to the debugger without anyrestriction and will be able to run arbitrary code.
By default node --inspect
binds to 127.0.0.1. You explicitly need to provide apublic IP address or 0.0.0.0, etc., if you intend to allow external connectionsto the debugger. Doing so may expose you to a potentially significant securitythreat. We suggest you ensure appropriate firewalls and access controls in placeto prevent a security exposure.
See the section on 'Enabling remote debugging scenarios' on some advice on howto safely allow remote debugger clients to connect.
Local applications have full access to the inspector
Even if you bind the inspector port to 127.0.0.1 (the default), any applicationsrunning locally on your machine will have unrestricted access. This is by designto allow local debuggers to be able to attach conveniently.
Browsers, WebSockets and same-origin policy
Websites open in a web-browser can make WebSocket and HTTP requests under thebrowser security model. An initial HTTP connection is necessary to obtain aunique debugger session id. The same-origin-policy prevents websites from beingable to make this HTTP connection. For additional security againstDNS rebinding attacks, Node.jsverifies that the 'Host' headers for the connection eitherspecify an IP address or localhost
or localhost6
precisely.
These security policies disallow connecting to a remote debug server byspecifying the hostname. You can work-around this restriction by specifyingeither the IP address or by using ssh tunnels as described below.
Inspector Clients
Several commercial and open source tools can connect to the Node.js Inspector.Basic info on these follows:
- CLI Debugger supported by the Node.js Foundation which uses the Inspector Protocol.
- A version is bundled with Node.js and can be used with
node inspect myscript.js
. - The latest version can also be installed independently (e.g.
npm install -g node-inspect
)and used withnode-inspect myscript.js
.
Chrome DevTools 55+, Microsoft Edge
- Option 1: Open
chrome://inspect
in a Chromium-basedbrowser oredge://inspect
in Edge. Click the Configure button and ensure your target host and portare listed. - Option 2: Copy the
devtoolsFrontendUrl
from the output of/json/list
(see above) or the --inspect hint text and paste into Chrome.
Visual Studio Code 1.10+
- In the Debug panel, click the settings icon to open
.vscode/launch.json
.Select 'Node.js' for initial setup.
Visual Studio 2017
- Choose 'Debug > Start Debugging' from the menu or hit F5.
- Detailed instructions.
JetBrains WebStorm 2017.1+ and other JetBrains IDEs
- Create a new Node.js debug configuration and hit Debug.
--inspect
will be usedby default for Node.js 7+. To disable uncheckjs.debugger.node.use.inspect
inthe IDE Registry.
- Library to ease connections to Inspector Protocol endpoints.
- Start a Node.js debug configuration from the
Debug
view or hitF5
. Detailed instructions
Eclipse IDE with Eclipse Wild Web Developer extension
- From a .js file, choose 'Debug As... > Node program', or
- Create a Debug Configuration to attach debugger to running Node.js application (already started with
--inspect
).
Command-line options
The following table lists the impact of various runtime flags on debugging:
Flag | Meaning |
---|---|
--inspect |
|
--inspect=[host:port] |
|
--inspect-brk |
|
--inspect-brk=[host:port] |
|
node inspect script.js |
|
node inspect --port=xxxx script.js |
|
Enabling remote debugging scenarios
We recommend that you never have the debugger listen on a public IP address. Ifyou need to allow remote debugging connections we recommend the use of sshtunnels instead. We provide the following example for illustrative purposes only.Please understand the security risk of allowing remote access to a privilegedservice before proceeding.
Let's say you are running Node.js on a remote machine, remote.example.com, thatyou want to be able to debug. On that machine, you should start the node processwith the inspector listening only to localhost (the default).
Now, on your local machine from where you want to initiate a debug clientconnection, you can setup an ssh tunnel:
This starts a ssh tunnel session where a connection to port 9221 on your localmachine will be forwarded to port 9229 on remote.example.com. You can now attacha debugger such as Chrome DevTools or Visual Studio Code to localhost:9221,which should be able to debug as if the Node.js application was running locally.
Legacy Debugger
The legacy debugger has been deprecated as of Node.js 7.7.0. Please use--inspect
and Inspector instead.
When started with the --debug or --debug-brk switches in version 7 andearlier, Node.js listens for debugging commands defined by the discontinuedV8 Debugging Protocol on a TCP port, by default 5858
. Any debugger clientwhich speaks this protocol can connect to and debug the running process; acouple popular ones are listed below.
The V8 Debugging Protocol is no longer maintained or documented.
Mac Resource Inspector Training
Start node debug script_name.js
to start your script under the builtincommand-line debugger. Your script starts in another Node.js process started withthe --debug-brk
option, and the initial Node.js process runs the _debugger.js
script and connects to your target.
Mac Resource Inspector Download
Debug your Node.js app with Chrome DevTools by using an intermediary processwhich translates the Inspector Protocol used in Chromium to the V8 Debuggerprotocol used in Node.js.