import * as winston from 'winston'; import parseArgv from './utils/parseArgv'; let args = parseArgv([], ['DEBUG']); const logLevel = args.DEBUG ? 'debug' : 'info'; const logger = new winston.Logger({ transports: [ new winston.transports.Console({ colorize: true, level: logLevel }) ] }); const timezone = new Date() .toLocaleString('en-US', { timeZoneName: 'short' }) .split(' ') .pop(); export const formatTimestamp = (date: Date) => `${date.getFullYear()}-${(date.getMonth() + 1).toString().padStart(2, '0')}-${date .getDate() .toString() .padStart(2, '0')} ${date .getHours() .toString() .padStart(2, '0')}:${date .getMinutes() .toString() .padStart(2, '0')}:${date .getSeconds() .toString() .padStart(2, '0')}.${date .getMilliseconds() .toString() .padEnd(3, '0')} ${timezone}`; export const timestamp = () => formatTimestamp(new Date()); export default logger;