Submit
Path:
~
/
/
opt
/
cpanel
/
ea-ruby27
/
root
/
usr
/
share
/
passenger
/
node
/
vendor-copy
/
winston
/
lib
/
winston
/
transports
/
File Content:
transport.js
/* * transport.js: Base Transport object for all Winston transports. * * (C) 2010 Charlie Robbins * MIT LICENCE * */ var events = require('events'), util = require('util'); // // ### function Transport (options) // #### @options {Object} Options for this instance. // Constructor function for the Tranport object responsible // base functionality for all winston transports. // var Transport = exports.Transport = function (options) { events.EventEmitter.call(this); options = options || {}; this.silent = options.silent || false; this.raw = options.raw || false; this.name = options.name || this.name; this.formatter = options.formatter; // // Do not set a default level. When `level` is falsey on any // `Transport` instance, any `Logger` instance uses the // configured level (instead of the Transport level) // this.level = options.level; this.handleExceptions = options.handleExceptions || false; this.exceptionsLevel = options.exceptionsLevel || 'error'; this.humanReadableUnhandledException = options.humanReadableUnhandledException || false; }; // // Inherit from `events.EventEmitter`. // util.inherits(Transport, events.EventEmitter); // // ### function formatQuery (query) // #### @query {string|Object} Query to format // Formats the specified `query` Object (or string) to conform // with the underlying implementation of this transport. // Transport.prototype.formatQuery = function (query) { return query; }; // // ### function normalizeQuery (query) // #### @options {string|Object} Query to normalize // Normalize options for query // Transport.prototype.normalizeQuery = function (options) { // // Use options similar to loggly. // [See Loggly Search API](http://wiki.loggly.com/retrieve_events#optional) // options = options || {}; // limit options.rows = options.rows || options.limit || 10; // starting row offset options.start = options.start || 0; // now options.until = options.until || new Date; if (typeof options.until !== 'object') { options.until = new Date(options.until); } // now - 24 options.from = options.from || (options.until - (24 * 60 * 60 * 1000)); if (typeof options.from !== 'object') { options.from = new Date(options.from); } // 'asc' or 'desc' options.order = options.order || 'desc'; // which fields to select options.fields = options.fields; return options; }; // // ### function formatResults (results, options) // #### @results {Object|Array} Results returned from `.query`. // #### @options {Object} **Optional** Formatting options // Formats the specified `results` with the given `options` accordinging // to the implementation of this transport. // Transport.prototype.formatResults = function (results, options) { return results; }; // // ### function logException (msg, meta, callback) // #### @msg {string} Message to log // #### @meta {Object} **Optional** Additional metadata to attach // #### @callback {function} Continuation to respond to when complete. // Logs the specified `msg`, `meta` and responds to the callback once the log // operation is complete to ensure that the event loop will not exit before // all logging has completed. // Transport.prototype.logException = function (msg, meta, callback) { var self = this, called; if (this.silent) { return callback(); } function onComplete () { if (!called) { called = true; self.removeListener('logged', onComplete); self.removeListener('error', onComplete); callback(); } } this.once('logged', onComplete); this.once('error', onComplete); this.log(self.exceptionsLevel, msg, meta, function () { }); };
Edit
Rename
Chmod
Delete
FILE
FOLDER
Name
Size
Permission
Action
console.js
4006 bytes
0644
file.js
18249 bytes
0644
http.js
5474 bytes
0644
memory.js
2524 bytes
0644
transport.js
3729 bytes
0644
N4ST4R_ID | Naxtarrr