1.1.3 • Published 2 years ago

kasperware-klog v1.1.3

Weekly downloads
-
License
ISC
Repository
-
Last release
2 years ago

Klog

A very simple script for error handling in NodeJS using promises.

Structure of return

  • status (int) 0 is success (default = 0)
  • warnings (int) number of warnings (default = 0)
  • notices (int) number of notices (default = 0)
  • fin (bool) true if 'done()' is sent (default = false)
  • logs (array) all logs (default = [])
  • data (object) data send in 'done({data})' (default = {})
  • httpcode (int) generated by functions (default = 0)

Basic functions

CommandHTTP codeStatusFinNotes
done(data)200-trueSends data as data
err(msg)5001-Logs "ERROR 500"+msg
bad(msg)4001-Logs "ERROR 400"+msg
forbid(msg)4031-Logs "ERROR 403"+msg
toomany(msg)4291-Logs "ERROR 429"+msg

Other functions

log(msg) adds "msg" to logs

warn(msg) adds "WARNING: msg" to logs and warnings++

note(msg) adds "NOTICE: msg" to logs and notices++

Example of use

const Klog = require("kasperware-klog")

async function handleit(id){
    return new Promise(async (resolve, reject) => {
	var k = new Klog();
	k.log("Running on ID: "+id);
	const search = await knex("posts").where("id", "=", id)
	.then(function(rows){
	    if(rows.length==0)
		    k.warn("No result on ID"+id);
	    }else if(rows.length==1){
		    const row = rows[0];
		    k.log("Found "+row);
		    resolve(k.done())
	    }else{
		    reject(k.err("Too many found!"))
	    }
	})
	.catch(function(err){
	    reject(k.err("Error in db: "+err));
	})
    })
}

router.get(["/endpoint/:id"], async function(req, res){
	if(req.params.id && isNumber(req.params.id)){
		const id = req.params.id;
		await handleit(id)
		.then(function(data){
			res.status(data.httpcode).send(data);
		})
		.catch(function(data){
			res.status(data.httpcode).send(data);
		});
	}else{
		var out = new Klog().bad("ID is not a number!")
		res.status(out.httpcode).send(out);
	}
})
1.1.3

2 years ago

1.1.2

2 years ago

1.1.1

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago