mongoose-morgan
TypeScript icon, indicating that this package has built-in type declarations

1.0.17 • Public • Published

mongoose-morgan

dependencies Status devDependencies Status Known Vulnerabilities

NPM

Is npm package which is combining mongoose and morgan packages by adding an additional functionality to log morgan data into MongoDB database.

Install

To install this package just run:

npm install mongoose-morgan

Basic usage example

Here is an example of using mongoose-morgan together with the express app:

// express
var express = require('express');
var app = express();

// mongoose-morgan
var morgan = require('mongoose-morgan');

// connection-data
var port = process.env.port || 8080;

// Logger
app.use(morgan({
    connectionString: 'mongodb://localhost:27017/logs-db'
}));

// run
app.listen(port);
console.log('works... ' + port);

The example from the above will create inside logs-db database collection called logs and will store data inside it.

Detailed usage

mongoose-morgan is accepting three parameters:

  • mongoData : object type with next properties
    • required {string} connectionString
    • optional {string} collection
    • optional {string} user
    • optional {string} pass
    • optional {bool} capped (pull req by @Ni55aN)
    • optional {int} cappedSize (pull req by @Ni55aN)
    • optional {int} cappedMax (pull req by @Ni55aN)
    • optional {string} dbName (pull req by @pmstss)
    • optional {bool} useNewUrlParser (default: true)
    • optional {bool} useUnifiedTopology (default: true) (issue #8)
  • options : object type - standrad morgan options
  • format : string type - standrad mrogan format

Example without morgan options:

app.use(morgan({
    connectionString: 'mongodb://localhost:27017/logs-db'
   }, {}, 'short'
));

Full example:

app.use(morgan({
    collection: 'error_logger',
    connectionString: 'mongodb://localhost:27017/logs-db',
    user: 'admin',
    pass: 'test12345'
   },
   {
    skip: function (req, res) {
        return res.statusCode < 400;
    }
   },
   'dev'
));

The code above will log data in dev format and will skip logging if the response status code is less than 400. Data will be stored in logs-db database in error_logger collection.

Contribution

Feel free to contribute by forking this repository, making changes, and submitting pull requests. For any questions or advice place an issue on this repository.

License

MIT

Package Sidebar

Install

npm i mongoose-morgan

Weekly Downloads

471

Version

1.0.17

License

MIT

Unpacked Size

16.3 kB

Total Files

12

Last publish

Collaborators

  • nempet