Как создать имя файла журнала с помощью s3-streamlogger в Winston - PullRequest
0 голосов
/ 01 февраля 2019

Я сделал следующее, чтобы сохранить nodejs файл журнала в aws s3.Но проблема заключается в том, что всякий раз, когда я запускаю его, он создает файлы журнала в aws s3 вместо регистрации внутри существующего файла журнала.

const filename = moment().format('DD-MM-YYYY') + '-results.log';

var s3_stream = new S3StreamLogger({
    bucket: `ppsheinbucket/${filename}`,
    access_key_id: '',
    secret_access_key: ''
});

const logger = caller => {
    return createLogger({
        .
        .
        .,
        transports: [
            new transports.Stream({
                stream: s3_stream,
                format: format.combine(
                    format.printf(
                        info =>
                        `${info.timestamp} ${info.level} [${info.label}]: ${info.message}`
                    )
                )
            })
        ]
    });
};

И s3-streamlogger упоминает свою систему именования файла журнала с tails3, ноЯ попробовал дать имя, пожалуйста, дайте мне знать, если у вас был такой же опыт, как у меня.Большое спасибо.

name_format

Формат имен файлов для создания, принимает спецификаторы strftime.По умолчанию «% Y-% m-% d-% H-% M-% S-% L -. Log».Date (), используемый для заполнения спецификаторов формата, создается с текущим временем UTC, но все еще имеет текущий часовой пояс, поэтому любые спецификаторы, которые выполняют преобразование часового пояса, будут возвращать неправильные даты.

Если вы используете форматсформируйте% Y-% m-% d-% H-% M -. log, затем вы можете использовать tails3 для привязки файлов журнала, создаваемых S3StreamLogger.

...