process-observe
Native bindings to observation APIs like sysctl
(BSDs), proc/{pid}/
(Linux) and Windows equivalents in the context of process observation.
TL;DR
In some cases you have orphaned process or just want to watch certain processes. To work with them from node you need either handles to them or need to observe them first. This module aids those purposes.
// inspect your current process (here assuming that you have just spawned// a new process), here with async APIobserve
Implementation Status
Method | implemented |
---|---|
.info(pid [, cb]) | yes |
.children(pid [, cb]) | yes |
Overview
Technical Overview
Rquirements:
- Node 4.0.0+
Platform
This module is currently tested on:
Platform | 0.12 | 3.0 | 4.0 | 5.0 | 6.0 |
---|---|---|---|---|---|
Mac OS X | - | - | yes | yes | yes |
BSDs | - | - | - | - | - |
Linux | - | - | yes | yes | yes |
Windows | - | - | - | - | - |
Roadmap
Please see list of the implemented methods for now.
API
ProcessObserve
Kind: global class
- ProcessObserve
- .children(pid, [cb]) ⇒
Object
- .info(pid, [cb]) ⇒
Object
- .children(pid, [cb]) ⇒
Object
processObserve.children(pid, [cb]) ⇒ Query a process associated with a specified pid
for the number of and a
list of pids of childnre it has.
Kind: instance method of ProcessObserve
Returns: Object
- returns an object with [0] the list of pids and [1] their count
Param | Type | Description |
---|---|---|
pid | Number |
pid to query |
[cb] | function |
optional callback. If provided sync function will be called on next tick. |
Example
const observe = // query the OS pid for all its children (100+), here with sync APIobserve// -> {pids: [1, 2, 50, ...], count: 121} // inspect your current process (here assuming that you have just spawned// a new process), here with async APIobserve
Object
processObserve.info(pid, [cb]) ⇒ Query a process associated with a specified pid
a wider process specific data
such as a its parent, children, hardware usage etc. (see list TBD)
Kind: instance method of ProcessObserve
Returns: Object
- returns an object with process specific data
Param | Type | Description |
---|---|---|
pid | Number |
pid to query |
[cb] | function |
optional callback. If provided sync function will be called on next tick. |
Example
const observe = const currenProcess = processpid// syncobserve// -> { pid: 3804, parent_pid: 3803, children_count: 1, children: [ 3805 ]} // asyncobserve
License
MIT