diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3c3629e --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +node_modules diff --git a/index.js b/index.js new file mode 100644 index 0000000..fa856eb --- /dev/null +++ b/index.js @@ -0,0 +1,22 @@ +var _ = require('lodash'); +var logger = require('./lib/logger.js'); +var dataLogs = require('./data/logs.json'); + + +// Logging from logger.js +var infoMsg = "Logging message at INFO level"; +var warningMsg = "Logging message at WARNING level"; +var errorMsg = "Logging message at ERROR level"; + +logger.log(infoMsg, 'info'); +logger.log(warningMsg, 'warning'); +logger.log(errorMsg, 'error'); + + +// Logging from logs.json +_.each(dataLogs, function(dataLog) { + var msg = dataLog.message; + var level = dataLog.level; + + logger.log(msg, level); +}); diff --git a/lib/logger.js b/lib/logger.js new file mode 100644 index 0000000..b7778a0 --- /dev/null +++ b/lib/logger.js @@ -0,0 +1,26 @@ +var chalk = require('chalk'); + + +var logger = { + log: function(message, level) { + if (level.toUpperCase() === 'INFO') { + this.info(message); + } else if (level.toUpperCase() === 'WARNING') { + this.warning(message); + } else if (level.toUpperCase() === 'ERROR') { + this.error(message); + } + }, + info: function(message) { + console.log(chalk.blue(message)); + }, + warning: function(message) { + console.log(chalk.yellow(message)); + }, + error: function(message) { + console.log(chalk.red(message)); + } +} + + +module.exports = logger; diff --git a/package.json b/package.json new file mode 100644 index 0000000..2732ed6 --- /dev/null +++ b/package.json @@ -0,0 +1,23 @@ +{ + "name": "assignment_node_hello_world", + "version": "1.0.0", + "description": "assignment_node_hello_world ===========================", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/wdh7/assignment_node_hello_world.git" + }, + "author": "", + "license": "ISC", + "bugs": { + "url": "https://github.com/wdh7/assignment_node_hello_world/issues" + }, + "homepage": "https://github.com/wdh7/assignment_node_hello_world#readme", + "dependencies": { + "chalk": "^2.1.0", + "lodash": "^4.17.4" + } +}