JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 105
  • Score
    100M100P100Q77691F

Runtime monitoring for node.js applications

Package Exports

  • monitor

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (monitor) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Monitor

Remote monitoring for Node.js applications

Introduction

This package provides a foundation for monitoring and controlling remote node.js applications.

It introduces the concept of a Probe - a small software component capable of exposing and controlling state within a running node.js server.

Probes are written as Backbone models, and remain dormant in your process until instantiated from remote monitors.

From the monitoring process, a Monitor class is provided to connect with a remote probe.

This package is used for writing and embedding probes into your app server, and for writing custom clients for inspecting and controlling these probes. A companion package - Node-Monitor - provides a user interface for building real-time monitor dashboards.

Quick Start

Install using npm

$ npm install monitor

Start the monitor service (standalone)

Normally you'll include this package into your own application server, but you can run as a standalone application as well.

$ npm start monitor

Observe a probe from a remote process

In this example we're using a REPL console to connect with the built-in Process probe.

Open a REPL console from another terminal

$ node

Create a monitor for the Process probe

> var Monitor = require('monitor');
> var processMonitor = new Monitor({server:'localhost', probeClass: 'Process'});

Connect with the probe, and view the properties

> processMonitor.connect();
> processMonitor.toJSON();

The monitor is a Backbone model, so you can watch for changes

> var showFreeMem = function(){console.log(processMonitor.get('freemem'))};
> processMonitor.on('change', showFreeMem);

See Also

  • API-Docs Monitor internal documentation
  • Node-Monitor Companion webapp for building real-time monitor dashboards

License

Released under the Apache License 2.0

See LICENSE file.

Copyright (c) 2012 Loren West