lunes, 6 de febrero de 2017

Chat con Websockets - Express y Debug (Parte 2 - Creando la estructura del proyecto)

Hallo!!! Esta es la segunda parte del proyecto que crearemos, puedes ver la primera donde preparamos las librerias necesarias para transpilar el proyecto con babel. Bueno, es hora de crear la estructura del proyecto, lo único que se necesita es duplicar la estructura que se presenta a continuación:
Estructura de carpetas apra el proyecto

Ahora, ageguemos algunos archivos interesantes, primero veamos como mostrar mensajes en la consola de la manera correcta. Instalaremos debug:

$ npm install --save debug

Ahora modificaremos el comando start para iniciar la aplicación con la opción de debug, hay que editar el archivo package.json:

"scripts": {
  "start": "DEBUG=chat-backend babel-watch -L index.js",
  "eslint": "eslint .",
  "test": "echo \"Error: no test specified\" && exit 1"
},

Agregamos la variable de entorno debug con el valor chat-backend (el nombre que le pusimos al debugModule), también modificaremos el archivo index.js para verificar que todo esta funcionando correctamente.

import express from 'express';
import http from 'http';
import debugModule from 'debug';
import socketIO from 'socket.io';

const app = express();
const server = http.Server(app);
const io = socketIO(server);
const debug = debugModule('chat-backend');

server.listen(8081, () => {
  debug('Servidor escuchando en el puerto 8081');
});

io.on('connection', (socket) => {
  debug('Socket conectado', socket);
});

Ahora iniciaremos la aplicación (con npm start), veamos como se comporta:



Como se puede observar, el mensaje enviado con debug se muestra, y esto se puede controlar con una variable de entorno tanto en un ambiente de desarrollo como en producción. Es ideal tener debug habilitado para evitar utilizar console.log, esto para no tener los mensajes que agregamos en nuestros logs de producción.

Para poder jugar con el código de esta parte de la aplicación, bajar la aplicación desde github:

$ git clone https://github.com/feardarkness/chat-backend.git
$ git checkout tags/express-debug

Y eso es todo por ahora, keep coding >_<.

No hay comentarios:

Publicar un comentario