La utilidad de registro que utiliza npm.
Este registrador es muy básico. Realiza el registro para npm. Admite niveles personalizados y salida en color.
De forma predeterminada, los registros se escriben en stderr. Si desea enviar mensajes de registro a salidas que no sean transmisiones, puede cambiar el miembro log.stream
o simplemente escuchar los eventos que emite y hacer lo que quiera con ellos.
npm install npmlog --save
var log = require ( 'npmlog' )
// additional stuff ---------------------------+
// message ----------+ |
// prefix ----+ | |
// level -+ | | |
// v v v v
log . info ( 'fyi' , 'I have a kitty cat: %j' , myKittyCat )
El nivel en el que mostrar los registros. Se mostrarán todos los registros en o por encima de este nivel. El nivel especial de silent
evitará que se muestre nada.
Una matriz de todos los mensajes de registro que se han ingresado.
El número máximo de registros que se deben conservar. Si log.record supera el 10 % de este valor, se reduce al 90 % de este valor.
El motivo de la ventana del 10% es para no tener que cambiar el tamaño de una matriz grande en cada entrada del registro.
Un objeto de estilo que especifica cómo se diseñan los prefijos. (Vea abajo)
Un objeto de estilo que especifica cómo se aplica el estilo al título. (Vea abajo)
Si se establece, un encabezado que se imprime al comienzo de cada línea.
process.stderr
La secuencia donde se escribe la salida.
Fuerza el uso de colores en todos los mensajes, independientemente del flujo de salida.
Desactiva los colores en todos los mensajes.
Habilitar la visualización del control giratorio de actividad del registro y la barra de progreso
Deshabilitar la visualización de una barra de progreso
Fuerza el uso del tema Unicode para la barra de progreso.
Deshabilite el uso de Unicode en la barra de progreso.
Establezca una plantilla para generar la barra de progreso. Consulte la documentación del medidor para obtener más detalles.
Seleccione un conjunto de temas para elegir temas para la barra de progreso. Consulte la documentación del medidor para obtener más detalles.
Deja de emitir mensajes a la transmisión, pero no los descartes.
Emite todos los mensajes almacenados en el búfer que se escribieron mientras estaba en pausa.
level
{String} El nivel para emitir el mensaje enprefix
{String} Un prefijo de cadena. Establezca "" para omitir.message...
Argumentos para util.format
Emitir un mensaje de registro en el nivel especificado.
Por ejemplo,
Como log.log(level, prefix, message, ...)
. De esta manera, cada nivel recibe una taquigrafía, por lo que puede hacerlo log.info(prefix, message)
.
level
{String} Indicador de niveln
{Número} El nivel numéricostyle
{Objeto} Objeto con fg, bg, inverso, etc.disp
{String} Reemplazo opcional para level
en la salida.Configura un nuevo nivel con una función taquigráfica, etc.
Tenga en cuenta que si el número es Infinity
, establecer el nivel en ese nivel hará que se supriman todos los mensajes de registro. Si el número es -Infinity
, entonces la única forma de mostrarlo es habilitar todos los mensajes de registro.
name
{Cadena} Opcional; nombre del elemento de progreso.todo
{Número} Opcional; cantidad total de trabajo a realizar. Predeterminado 0.weight
{Número} Opcional; el peso de este artículo en relación con otros. Predeterminado 1. Esto agrega un nuevo rastreador de elementos are-we-there-yet
al rastreador de progreso. El objeto devuelto tiene los métodos log[level]
pero, por lo demás, es un objeto Tracker
are-we-there-yet
.
Esto agrega un nuevo rastreador de transmisiones are-we-there-yet
al rastreador de progreso. El objeto devuelto tiene los métodos log[level]
pero, por lo demás, es un objeto TrackerStream
are-we-there-yet
.
Esto agrega un nuevo grupo de seguimiento are-we-there-yet
al seguimiento de progreso. El objeto devuelto tiene los métodos log[level]
pero, por lo demás, es un objeto TrackerGroup
are-we-there-yet
.
Todos los eventos se emiten con el objeto de mensaje.
log
Emitido para todos los mensajeslog.
Emitido para todos los mensajes con el nivel
.
Los mensajes con prefijos también emiten su prefijo como evento.Los objetos de estilo pueden tener los siguientes campos:
fg
{String} Color del texto de primer planobg
{String} Color del fondobold
, inverse
, underline
{Booleano} Establece la propiedad asociadabell
{Boolean} Haz un ruido (Esto probablemente sea bastante molesto). Cada evento de registro se emite con un objeto de mensaje y la lista log.record
contiene todos los que se han creado. Tienen los siguientes campos:
id
{Número}level
{Cadena}prefix
{Cadena}message
{Cadena} Resultado de util.format()
messageRaw
{Array} Argumentos para util.format()
Usamos set-blocking
para configurar el bloqueo stderr y stdout si son tty y tienen la llamada setBlocking. Esta es una solución alternativa a un problema en las primeras versiones de Node.js 6.x, que hacía que stderr y stdout no bloquearan en OSX. (Siempre están bloqueando Windows y nunca bloquearon en Linux). npmlog
necesita que estén bloqueando para poder permitir que la salida stdout y stderr se entrelazan.