Morgan - Gerando log das requisições HTTP

Morgan - Gerando log das requisições HTTP

Tulio Faria
Tulio Faria23 de agosto de 2017

O hands-on de hoje é sobre o Morgan, que é uma forma de logar ou mostrar quais requisições estão chegando em nosso servidor HTTP, seja ele feito no Express ou em Node puro utilizando o módulo HTTP.

A primeira coisa que temos que fazer é adicionar as dependências:

yarn add express morgan

Eu já tenho um arquivo teste criado e vou começar a importar o que precisamos:

const express = require('express')
const morgan = require('morgan')
const app = express()
app.get('/', (req, res) => {
  res.send('olá DevPleno')
})
app.listen(3000, () => console.log('listenning'))

Agora vamos colocar o Morgan como um Middleware e ele vai interceptar toda a requisição que chegar:

app.use(morgan('combined'))

Perceba que, ao dar F5 na página, ele traz as informações:

Exemplo 1

Isso é muito legal porque no Apache já temos isso, e se estivermos rodando isso na Amazon, temos a possibilidade de conseguir recuperar esses dados. Temos uma outra versão que é o Tiny:

app.use(morgan('tiny'))

Exemplo 2

Nele temos um retorno mais simples, o método, saída e tempo de resposta. Ainda temos uma terceira forma, que é um padrão personalizado:

app.use(morgan(':method :url :response-time'))

Exemplo 3

Lembrando que, pela Amazon, você pode guardar isso enviando para o S3. Indo para lá, você pode guardar essas informações por muito tempo.

Essa é a ideia para gerar dados toda vez que a gente recebe uma requisição no Express, isso é bastante útil, é algo que já existe no Apache, mas temos que adicionar como Middleware no Express e assim configurar da maneira que queremos.

Confira o video:

Curta o DevPleno no Facebookinscreva-se no canal e cadastre seu e-mail para não perder nenhuma novidade. Deixe suas dúvidas e sugestões nos comentários. Abraço!

Tulio Faria
Autor
Tulio Faria23 de agosto de 2017

Últimas do Blog