Aller au contenu

Sorties

Par défaut mime-logger écrit sur la console. Vous pouvez rediriger vers un fichier, une fonction personnalisée, ou toute combinaison.

Par défaut. Aucune configuration requise :

const logger = new Logger("app");
// équivalent à :
const logger = new Logger("app", { output: "console" });

Passez un objet FileOutputOptions pour écrire dans un fichier. Le path supporte des tokens temporels afin que chaque exécution (ou chaque heure/jour) ait son propre fichier.

import Logger, { type FileOutputOptions } from "mime-logger";
const fileOut: FileOutputOptions = {
type: "file",
path: "./logs/app-{year}-{month}-{day}.log",
};
const logger = new Logger("app", { output: fileOut });
ChampTypeRequisDescription
{year}stringoptionnelAnnée sur quatre chiffres, ex. 2025.
{month}stringoptionnelMois sur deux chiffres, ex. 05.
{day}stringoptionnelJour du mois sur deux chiffres.
{date}stringoptionnelDate ISO complète, ex. 2025-05-15.
{hour}stringoptionnelHeure sur deux chiffres (24 h).
{minutes}stringoptionnelMinutes sur deux chiffres.
{seconds}stringoptionnelSecondes sur deux chiffres.
{ms}stringoptionnelMillisecondes sur trois chiffres.

Les flux de fichiers sont ouverts à la première écriture et restent ouverts pendant toute la durée du processus.

Fournissez une fonction pour envoyer les lignes de log n’importe où — un collecteur distant, une file, un buffer en mémoire pour les tests, etc.

const logs: string[] = [];
const logger = new Logger("app", {
output: (message, obj) => {
logs.push(message);
},
});

Signature du callback :

(message: string, obj: FormatObject) => void

message est la chaîne entièrement formatée (après exécution de format). obj est le FormatObject brut si vous avez besoin des données structurées.

Passez un tableau pour écrire vers plusieurs cibles simultanément :

import Logger, { Formats } from "mime-logger";
const logger = new Logger("app", {
format: Formats.json,
output: [
"console",
{ type: "file", path: "./logs/{year}-{month}-{day}.log" },
],
});

Chaque cible reçoit le même message formaté.