Deno: отключить журналы предупреждений (WARN) в консоли - PullRequest
0 голосов
/ 19 июня 2020

Я новичок в Deno и вижу, что Deno показывает все журналы предупреждений (WARN) в консоли. Есть ли возможность отключить это поведение?

ОБНОВЛЕНИЕ: в конце концов, я думаю, мне нужно иметь возможность изменить уровень журнала регистратора Deno по умолчанию для его consoleHandler. например, когда я использую API выборки Deno, я не хочу видеть много предупреждений о размере запроса / ответа, et c.

Ответы [ 2 ]

0 голосов
/ 19 июня 2020

Я не тестировал, но я думаю, что это вариант, который вы можете передать при запуске кода

-L, --log-level <log-level>
            Set log level [possible values: debug, info]

Также проверьте этот фрагмент кода из официальных документов для настройки регистратора

import * as log from "https://deno.land/std/log/mod.ts";

// Simple default logger out of the box. You can customize it
// by overriding logger and handler named "default", or providing
// additional logger configurations. You can log any data type.
log.debug("Hello world");
log.info(123456);
log.warning(true);
log.error({ foo: "bar", fizz: "bazz" });
log.critical("500 Internal server error");

// custom configuration with 2 loggers (the default and `tasks` loggers)
await log.setup({
  handlers: {
    console: new log.handlers.ConsoleHandler("DEBUG"),

    file: new log.handlers.FileHandler("WARNING", {
      filename: "./log.txt",
      // you can change format of output message using any keys in `LogRecord`
      formatter: "{levelName} {msg}",
    }),
  },

  loggers: {
    // configure default logger available via short-hand methods above
    default: {
      level: "DEBUG",
      handlers: ["console", "file"],
    },

    tasks: {
      level: "ERROR",
      handlers: ["console"],
    },
  },
});

let logger;

// get default logger
logger = log.getLogger();
logger.debug("fizz"); // logs to `console`, because `file` handler requires "WARNING" level
logger.warning(41256); // logs to both `console` and `file` handlers

// get custom logger
logger = log.getLogger("tasks");
logger.debug("fizz"); // won't get output because this logger has "ERROR" level
logger.error({ productType: "book", value: "126.11" }); // log to `console`

// if you try to use a logger that hasn't been configured
// you're good to go, it gets created automatically with level set to 0
// so no message is logged
const unknownLogger = log.getLogger("mystery");
unknownLogger.info("foobar"); // no-op
0 голосов
/ 19 июня 2020

Существует Fen framework для обозначения, который может это сделать: вот ссылка

...