Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

sandbox-debugger

Package Overview
Dependencies
Maintainers
1
Versions
61
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

sandbox-debugger

sandbox debugger client for node

latest
Source
npmnpm
Version
0.2.44
Version published
Weekly downloads
4
-63.64%
Maintainers
1
Weekly downloads
 
Created
Source

sandbox-debugger

js-standard-style ci automerge Docker Image CI downloads Docker Pulls

Debug a Node.js process anywhere using chrome://inspect or node-inspect

node debug port 9229sandbox debug clientsandbox debug broker

Interactive debugging using inspect, debug the same way you do with a local process.

Supports a Node.js process running

How it works?

Node opens a websocket when in debug mode, both the sandbox server and client work by piping the websocket data via the broker.

Run sandbox server

The server is used as a gatekeeper for the debug messages.

npx sandbox-debugger-server

or

ᐅ docker run \
  --name sandbox-debugger \
  -ti \
  --rm \
  -p 9229:9229 \
  jameskyburz/sandbox-debugger

The server will output

   Debug server started!                       
                                               
    - To debug a new process:                  
      export DEBUG_PROXY=xxx.xxx.x.xxx:9229    
      node index.js                            
                                               
    - To debug an existing process:            
      export DEBUG_PROXY=xxx.xxx.x.xxx:9229    
      export DEBUG_PID=<pid of node process>   
      npx sandbox-debugger                     

    - Find pid of first running Node.js process
      ps ax |
      grep 'no[d]e ' |
      awk '{print $1}' |
      head -n 1
                                               
    - Allow remote access to me:              
      npx ngrok http 9229                      

Create a tunnel to our sandbox server process

Using ngrok you can tunnel to the locally running broker from for example aws lambda.

npx ngrok http 9229

Client

Example debug current process

// index.js
require('sandbox-debugger')
debugger
console.log('all done')

# DEBUG_PROXY is ip:port to sandbox broker
DEBUG_PROXY=ip:port node index.js

Example debug an already running process

# DEBUG_PROXY is ip:port to sandbox broker
# DEBUG_PID is pid of process to debug
DEBUG_PROXY=ip:port DEBUG_PID=x npx sandbox-debugger

AWS Lambda

Environment variable DEBUG_PROXY needs to point to the ngrok address including the port part :80.

The easiest way to debug lambda is to edit the code in aws console.

  • Copy the contents of https://unpkg.com/sandbox-debugger@latest/dist/index.js to debug.js
  • require('./debug.js') instead of sandbox-debugger

or

Use a lambda layer containing the sandbox-debugger, you can publish your own for node 12 here and also node 10 here.

license

Apache License, Version 2.0

Keywords

inspect

FAQs

Package last updated on 21 Aug 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts