mirror of https://github.com/rancher/dashboard.git
35 lines
866 B
JavaScript
35 lines
866 B
JavaScript
/* eslint-disable no-console */
|
|
export default () => {
|
|
const logTypes = ['warn', 'error'];
|
|
const MAX_LOGS_STORED = 400;
|
|
|
|
if (!process.env.dev) {
|
|
console.logLog = console.log.bind(console);
|
|
console.infoLog = console.info.bind(console);
|
|
logTypes.push('log');
|
|
logTypes.push('info');
|
|
}
|
|
|
|
console.warnLog = console.warn.bind(console);
|
|
console.errorLog = console.error.bind(console);
|
|
console.logs = [];
|
|
|
|
logTypes.forEach((type) => {
|
|
console[type] = function() {
|
|
const dataLogged = {
|
|
type,
|
|
dateTimeUtc: new Date().toUTCString(),
|
|
timestamp: Date.now(),
|
|
data: Array.from(arguments)
|
|
};
|
|
|
|
if (console.logs.length >= MAX_LOGS_STORED) {
|
|
console.logs.shift();
|
|
}
|
|
|
|
console.logs.push(dataLogged);
|
|
console[`${ type }Log`].apply(console, arguments);
|
|
};
|
|
});
|
|
};
|