Deployed the page to Github Pages.
This commit is contained in:
parent
1d79754e93
commit
2c89899458
62797 changed files with 6551425 additions and 15279 deletions
8
node_modules/winston-transport/dist/index.js
generated
vendored
Normal file
8
node_modules/winston-transport/dist/index.js
generated
vendored
Normal file
|
@ -0,0 +1,8 @@
|
|||
'use strict';
|
||||
|
||||
// Expose modern transport directly as the export
|
||||
|
||||
module.exports = require('./modern');
|
||||
|
||||
// Expose legacy stream
|
||||
module.exports.LegacyTransportStream = require('./legacy');
|
116
node_modules/winston-transport/dist/legacy.js
generated
vendored
Normal file
116
node_modules/winston-transport/dist/legacy.js
generated
vendored
Normal file
|
@ -0,0 +1,116 @@
|
|||
'use strict';
|
||||
|
||||
var util = require('util');
|
||||
|
||||
var _require = require('triple-beam'),
|
||||
LEVEL = _require.LEVEL;
|
||||
|
||||
var TransportStream = require('./modern');
|
||||
|
||||
/**
|
||||
* Constructor function for the LegacyTransportStream. This is an internal
|
||||
* wrapper `winston >= 3` uses to wrap older transports implementing
|
||||
* log(level, message, meta).
|
||||
* @param {Object} options - Options for this TransportStream instance.
|
||||
* @param {Transpot} options.transport - winston@2 or older Transport to wrap.
|
||||
*/
|
||||
|
||||
var LegacyTransportStream = module.exports = function LegacyTransportStream() {
|
||||
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
||||
|
||||
TransportStream.call(this, options);
|
||||
if (!options.transport || typeof options.transport.log !== 'function') {
|
||||
throw new Error('Invalid transport, must be an object with a log method.');
|
||||
}
|
||||
|
||||
this.transport = options.transport;
|
||||
this.level = this.level || options.transport.level;
|
||||
this.handleExceptions = this.handleExceptions || options.transport.handleExceptions;
|
||||
|
||||
// Display our deprecation notice.
|
||||
this._deprecated();
|
||||
|
||||
// Properly bubble up errors from the transport to the
|
||||
// LegacyTransportStream instance, but only once no matter how many times
|
||||
// this transport is shared.
|
||||
function transportError(err) {
|
||||
this.emit('error', err, this.transport);
|
||||
}
|
||||
|
||||
if (!this.transport.__winstonError) {
|
||||
this.transport.__winstonError = transportError.bind(this);
|
||||
this.transport.on('error', this.transport.__winstonError);
|
||||
}
|
||||
};
|
||||
|
||||
/*
|
||||
* Inherit from TransportStream using Node.js built-ins
|
||||
*/
|
||||
util.inherits(LegacyTransportStream, TransportStream);
|
||||
|
||||
/**
|
||||
* Writes the info object to our transport instance.
|
||||
* @param {mixed} info - TODO: add param description.
|
||||
* @param {mixed} enc - TODO: add param description.
|
||||
* @param {function} callback - TODO: add param description.
|
||||
* @returns {undefined}
|
||||
* @private
|
||||
*/
|
||||
LegacyTransportStream.prototype._write = function _write(info, enc, callback) {
|
||||
if (this.silent || info.exception === true && !this.handleExceptions) {
|
||||
return callback(null);
|
||||
}
|
||||
|
||||
// Remark: This has to be handled in the base transport now because we
|
||||
// cannot conditionally write to our pipe targets as stream.
|
||||
if (!this.level || this.levels[this.level] >= this.levels[info[LEVEL]]) {
|
||||
this.transport.log(info[LEVEL], info.message, info, this._nop);
|
||||
}
|
||||
|
||||
callback(null);
|
||||
};
|
||||
|
||||
/**
|
||||
* Writes the batch of info objects (i.e. "object chunks") to our transport
|
||||
* instance after performing any necessary filtering.
|
||||
* @param {mixed} chunks - TODO: add params description.
|
||||
* @param {function} callback - TODO: add params description.
|
||||
* @returns {mixed} - TODO: add returns description.
|
||||
* @private
|
||||
*/
|
||||
LegacyTransportStream.prototype._writev = function _writev(chunks, callback) {
|
||||
for (var i = 0; i < chunks.length; i++) {
|
||||
if (this._accept(chunks[i])) {
|
||||
this.transport.log(chunks[i].chunk[LEVEL], chunks[i].chunk.message, chunks[i].chunk, this._nop);
|
||||
chunks[i].callback();
|
||||
}
|
||||
}
|
||||
|
||||
return callback(null);
|
||||
};
|
||||
|
||||
/**
|
||||
* Displays a deprecation notice. Defined as a function so it can be
|
||||
* overriden in tests.
|
||||
* @returns {undefined}
|
||||
*/
|
||||
LegacyTransportStream.prototype._deprecated = function _deprecated() {
|
||||
// eslint-disable-next-line no-console
|
||||
console.error([this.transport.name + ' is a legacy winston transport. Consider upgrading: ', '- Upgrade docs: https://github.com/winstonjs/winston/blob/master/UPGRADE-3.0.md'].join('\n'));
|
||||
};
|
||||
|
||||
/**
|
||||
* Clean up error handling state on the legacy transport associated
|
||||
* with this instance.
|
||||
* @returns {undefined}
|
||||
*/
|
||||
LegacyTransportStream.prototype.close = function close() {
|
||||
if (this.transport.close) {
|
||||
this.transport.close();
|
||||
}
|
||||
|
||||
if (this.transport.__winstonError) {
|
||||
this.transport.removeListener('error', this.transport.__winstonError);
|
||||
this.transport.__winstonError = null;
|
||||
}
|
||||
};
|
212
node_modules/winston-transport/dist/modern.js
generated
vendored
Normal file
212
node_modules/winston-transport/dist/modern.js
generated
vendored
Normal file
|
@ -0,0 +1,212 @@
|
|||
'use strict';
|
||||
|
||||
var util = require('util');
|
||||
var Writable = require('readable-stream/lib/_stream_writable.js');
|
||||
|
||||
var _require = require('triple-beam'),
|
||||
LEVEL = _require.LEVEL;
|
||||
|
||||
/**
|
||||
* Constructor function for the TransportStream. This is the base prototype
|
||||
* that all `winston >= 3` transports should inherit from.
|
||||
* @param {Object} options - Options for this TransportStream instance
|
||||
* @param {String} options.level - Highest level according to RFC5424.
|
||||
* @param {Boolean} options.handleExceptions - If true, info with
|
||||
* { exception: true } will be written.
|
||||
* @param {Function} options.log - Custom log function for simple Transport
|
||||
* creation
|
||||
* @param {Function} options.close - Called on "unpipe" from parent.
|
||||
*/
|
||||
|
||||
|
||||
var TransportStream = module.exports = function TransportStream() {
|
||||
var _this = this;
|
||||
|
||||
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
||||
|
||||
Writable.call(this, { objectMode: true, highWaterMark: options.highWaterMark });
|
||||
|
||||
this.format = options.format;
|
||||
this.level = options.level;
|
||||
this.handleExceptions = options.handleExceptions;
|
||||
this.handleRejections = options.handleRejections;
|
||||
this.silent = options.silent;
|
||||
|
||||
if (options.log) this.log = options.log;
|
||||
if (options.logv) this.logv = options.logv;
|
||||
if (options.close) this.close = options.close;
|
||||
|
||||
// Get the levels from the source we are piped from.
|
||||
this.once('pipe', function (logger) {
|
||||
// Remark (indexzero): this bookkeeping can only support multiple
|
||||
// Logger parents with the same `levels`. This comes into play in
|
||||
// the `winston.Container` code in which `container.add` takes
|
||||
// a fully realized set of options with pre-constructed TransportStreams.
|
||||
_this.levels = logger.levels;
|
||||
_this.parent = logger;
|
||||
});
|
||||
|
||||
// If and/or when the transport is removed from this instance
|
||||
this.once('unpipe', function (src) {
|
||||
// Remark (indexzero): this bookkeeping can only support multiple
|
||||
// Logger parents with the same `levels`. This comes into play in
|
||||
// the `winston.Container` code in which `container.add` takes
|
||||
// a fully realized set of options with pre-constructed TransportStreams.
|
||||
if (src === _this.parent) {
|
||||
_this.parent = null;
|
||||
if (_this.close) {
|
||||
_this.close();
|
||||
}
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
/*
|
||||
* Inherit from Writeable using Node.js built-ins
|
||||
*/
|
||||
util.inherits(TransportStream, Writable);
|
||||
|
||||
/**
|
||||
* Writes the info object to our transport instance.
|
||||
* @param {mixed} info - TODO: add param description.
|
||||
* @param {mixed} enc - TODO: add param description.
|
||||
* @param {function} callback - TODO: add param description.
|
||||
* @returns {undefined}
|
||||
* @private
|
||||
*/
|
||||
TransportStream.prototype._write = function _write(info, enc, callback) {
|
||||
if (this.silent || info.exception === true && !this.handleExceptions) {
|
||||
return callback(null);
|
||||
}
|
||||
|
||||
// Remark: This has to be handled in the base transport now because we
|
||||
// cannot conditionally write to our pipe targets as stream. We always
|
||||
// prefer any explicit level set on the Transport itself falling back to
|
||||
// any level set on the parent.
|
||||
var level = this.level || this.parent && this.parent.level;
|
||||
|
||||
if (!level || this.levels[level] >= this.levels[info[LEVEL]]) {
|
||||
if (info && !this.format) {
|
||||
return this.log(info, callback);
|
||||
}
|
||||
|
||||
var errState = void 0;
|
||||
var transformed = void 0;
|
||||
|
||||
// We trap(and re-throw) any errors generated by the user-provided format, but also
|
||||
// guarantee that the streams callback is invoked so that we can continue flowing.
|
||||
try {
|
||||
transformed = this.format.transform(Object.assign({}, info), this.format.options);
|
||||
} catch (err) {
|
||||
errState = err;
|
||||
}
|
||||
|
||||
if (errState || !transformed) {
|
||||
// eslint-disable-next-line callback-return
|
||||
callback();
|
||||
if (errState) throw errState;
|
||||
return;
|
||||
}
|
||||
|
||||
return this.log(transformed, callback);
|
||||
}
|
||||
this._writableState.sync = false;
|
||||
return callback(null);
|
||||
};
|
||||
|
||||
/**
|
||||
* Writes the batch of info objects (i.e. "object chunks") to our transport
|
||||
* instance after performing any necessary filtering.
|
||||
* @param {mixed} chunks - TODO: add params description.
|
||||
* @param {function} callback - TODO: add params description.
|
||||
* @returns {mixed} - TODO: add returns description.
|
||||
* @private
|
||||
*/
|
||||
TransportStream.prototype._writev = function _writev(chunks, callback) {
|
||||
if (this.logv) {
|
||||
var infos = chunks.filter(this._accept, this);
|
||||
if (!infos.length) {
|
||||
return callback(null);
|
||||
}
|
||||
|
||||
// Remark (indexzero): from a performance perspective if Transport
|
||||
// implementers do choose to implement logv should we make it their
|
||||
// responsibility to invoke their format?
|
||||
return this.logv(infos, callback);
|
||||
}
|
||||
|
||||
for (var i = 0; i < chunks.length; i++) {
|
||||
if (!this._accept(chunks[i])) continue;
|
||||
|
||||
if (chunks[i].chunk && !this.format) {
|
||||
this.log(chunks[i].chunk, chunks[i].callback);
|
||||
continue;
|
||||
}
|
||||
|
||||
var errState = void 0;
|
||||
var transformed = void 0;
|
||||
|
||||
// We trap(and re-throw) any errors generated by the user-provided format, but also
|
||||
// guarantee that the streams callback is invoked so that we can continue flowing.
|
||||
try {
|
||||
transformed = this.format.transform(Object.assign({}, chunks[i].chunk), this.format.options);
|
||||
} catch (err) {
|
||||
errState = err;
|
||||
}
|
||||
|
||||
if (errState || !transformed) {
|
||||
// eslint-disable-next-line callback-return
|
||||
chunks[i].callback();
|
||||
if (errState) {
|
||||
// eslint-disable-next-line callback-return
|
||||
callback(null);
|
||||
throw errState;
|
||||
}
|
||||
} else {
|
||||
this.log(transformed, chunks[i].callback);
|
||||
}
|
||||
}
|
||||
|
||||
return callback(null);
|
||||
};
|
||||
|
||||
/**
|
||||
* Predicate function that returns true if the specfied `info` on the
|
||||
* WriteReq, `write`, should be passed down into the derived
|
||||
* TransportStream's I/O via `.log(info, callback)`.
|
||||
* @param {WriteReq} write - winston@3 Node.js WriteReq for the `info` object
|
||||
* representing the log message.
|
||||
* @returns {Boolean} - Value indicating if the `write` should be accepted &
|
||||
* logged.
|
||||
*/
|
||||
TransportStream.prototype._accept = function _accept(write) {
|
||||
var info = write.chunk;
|
||||
if (this.silent) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// We always prefer any explicit level set on the Transport itself
|
||||
// falling back to any level set on the parent.
|
||||
var level = this.level || this.parent && this.parent.level;
|
||||
|
||||
// Immediately check the average case: log level filtering.
|
||||
if (info.exception === true || !level || this.levels[level] >= this.levels[info[LEVEL]]) {
|
||||
// Ensure the info object is valid based on `{ exception }`:
|
||||
// 1. { handleExceptions: true }: all `info` objects are valid
|
||||
// 2. { exception: false }: accepted by all transports.
|
||||
if (this.handleExceptions || info.exception !== true) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
};
|
||||
|
||||
/**
|
||||
* _nop is short for "No operation"
|
||||
* @returns {Boolean} Intentionally false.
|
||||
*/
|
||||
TransportStream.prototype._nop = function _nop() {
|
||||
// eslint-disable-next-line no-undefined
|
||||
return void undefined;
|
||||
};
|
Loading…
Add table
Add a link
Reference in a new issue