Skip to content
Node.js Binding to SIGAR (System Information Gatherer And Reporter)
C++ CoffeeScript Python JavaScript
Latest commit 3affdbe Mar 23, 2013 @wdavidw Merge pull request #8 from duralog/master
updated to compile on latest node version
Failed to load latest commit information.
samples just noticed @wdavidw is also author of `printf` module. switching ov… Mar 23, 2013
src update to compile with latest node v0.10.1 Mar 22, 2013
binding.gyp update to compile with latest node v0.10.1 Mar 22, 2013
package.json just noticed @wdavidw is also author of `printf` module. switching ov… Mar 23, 2013

Build Status

Node Sigar binding

A complete binding to the SIGAR library.

Documentation is available on the project website.

Note, documentation include important installation instruction for some platforms.

SIGAR is a cross platform interface for gathering system information. From the project website, such information include:

  • System memory, swap, cpu, load average, uptime, logins
  • Per-process memory, cpu, credential info, state, arguments, environment, open files
  • File system detection and metrics
  • Network interface detection, configuration info and metrics
  • TCP and UDP connection tables
  • Network route table
var sigar = require('sigar');
console.log(sigar.version()); // returns the version

// invoke the library
var Sigar = sigar.init();
console.log(sigar.cpu()); // {}



> {
    ram: Number
    total: Number
    used: Number
    free: Number
    actual_used: Number
    actual_free: Number
    used_percent: Number
    free_percent: Number


    total: Number
    used: Number
    free: Number
    page_in: Number
    page_out: Number


> 52883 // seconds


[0.11, 0.13, 0.09]

Sigar.resourceLimit(); Sigar.whoList(); Sigar.sysInfo(); Sigar.fqdn(); // CPU Sigar.cpu(); Sigar.cpuList(); Sigar.cpuInfoList(); // Process Sigar.procList(); Sigar.procStat(); Sigar.procMem(); Sigar.procCred(); Sigar.procTime(); Sigar.procCpu(); Sigar.procState(); Sigar.procArgs(); Sigar.procEnv(); Sigar.procFd(); Sigar.procExe(); Sigar.procModules(); Sigar.procPort(); Sigar.threadCpu(); // Disk Sigar.fileSystemList(); Sigar.fileSystemUsage(); Sigar.fileSystemPing(); // Network Sigar.netInfo(); Sigar.netRouteList(); Sigar.netInterfaceList(); Sigar.netInterfaceConfig(); Sigar.netInterfaceConfigPrimary(); Sigar.netInterfaceStat(); Sigar.netConnectionList(); Sigar.netListenAddress(); Sigar.netStat(); Sigar.netStatPort(); Sigar.tcp(); Sigar.nfsClientV2(); Sigar.nfsServerV2(); Sigar.arpList(); // Misc Sigar.rpcPing();


  • compile the entire library with gyp
  • fix up the tests (and improve on them)
  • utilize / reimplement / remove sigar_format.c functions
  • convert functions without args to be getters
  • provide async funcs for long-running actions
  • old / broken code still exists for converting network addresses (see


Node Sigar is licensed under the BSD license.

Something went wrong with that request. Please try again.