An open API service indexing awesome lists of open source software.

https://github.com/kuzzleio/dumpme

A NodeJS module generating a coredumping the current process
https://github.com/kuzzleio/dumpme

Last synced: 9 months ago
JSON representation

A NodeJS module generating a coredumping the current process

Awesome Lists containing this project

README

          

# dumpme

Creates a coredump of the current process, without killing it.

Supports Linux Kernel Hardening options.

## Pre-requisites

* [gdb/gcore](http://man7.org/linux/man-pages/man1/gcore.1.html) must be installed on the system
* obviously, works only on *nix systems

## How to use

#### `dumpme([gcore], [coredump])`

Where:

* `gcore` is the path and filename of the gcore binary (default: `gcore`)
* `coredump` is the path + file name of the coredump file to create (default: `core.`)

Returns a `Boolean` as an indicator of success/failure.

```js
const dumpme = require('dumpme');

dumpme();
```

## Why gdb/gcore is needed?

The only alternative to gcore is to use [google-coredumper](https://code.google.com/archive/p/google-coredumper/), which is done by [node-gcore](https://www.npmjs.com/package/gcore).

Using google coredumper programatically is way cleaner than gcore, but it has the following issues:

* coredumps generated by Google coredumper are not compatible with llnode (see https://github.com/nodejs/llnode/issues/61)
* Google coredumper might not work with newer Linux distributions (mainly due to Kernel Hardening features, but [not only](http://www.gossamer-threads.com/lists/linux/kernel/622686)), and it seems unmaintained since 2008