Comparing version 1.1.3 to 1.1.4
@@ -125,10 +125,21 @@ /******************************************************************************* | ||
for (var prop in obj) { | ||
if (_.isPlainObject(obj[prop])) { | ||
subObj = obj[prop]; | ||
for (var subProp in subObj) { | ||
subObj = obj[prop]; | ||
var subProp; | ||
if (_.isPlainObject(subObj)) { | ||
for (subProp in subObj) { | ||
subPath = prop + separator + subProp; | ||
flattenedObj[subPath] = obj[prop][subProp]; | ||
flattenedObj[subPath] = subObj[subProp]; | ||
} | ||
} else if (subObj instanceof Error) { | ||
//propiedades standard | ||
flattenedObj[prop + separator + "name"] = subObj.name; | ||
flattenedObj[prop + separator + "message"] = subObj.message; | ||
flattenedObj[prop + separator + "stack"] = subObj.stack; | ||
//propiedades adhoc listables | ||
for (subProp in subObj) { | ||
subPath = prop + separator + subProp; | ||
flattenedObj[subPath] = subObj[subProp]; | ||
} | ||
} else { | ||
flattenedObj[prop] = obj[prop]; | ||
flattenedObj[prop] = subObj; | ||
} | ||
@@ -135,0 +146,0 @@ } |
@@ -53,8 +53,13 @@ /******************************************************************************* | ||
* @description: | ||
* Modifica, en su caso, los parametros de entrada de manera que | ||
* Tras su operativa, info se convierte siempre en un Object que recoge en | ||
* forma de propiedades, estandarizadas o no, la info presentada a saneamiento. | ||
* Modifica, en su caso, los parametros de entrada de manera que a su conclusion | ||
* info se halle siempre convertido (estandarizado) en un Object que recoge en | ||
* forma de propiedades la info original presentada a saneamiento. | ||
* Ademas de esta estandarizacion del tipo de primitiva, se produce una estandarizacion | ||
* secundaria en el nombre de un numero contado de propiedades, siendo estas: | ||
* + error => err | ||
* + request => req | ||
* | ||
* Para info de tipo atomico, opera la estandarizacion a Object, almacenando la | ||
* informacion original en la propiedad `str` del mismo. | ||
* Para info de tipo atomico (Boolean, String, Number) se almacena la informacion | ||
* original en la propiedad `str`. | ||
* Si la info es un Error, se almacena en la propiedad `err`. | ||
* | ||
@@ -95,2 +100,12 @@ * @param {Number} event: identificador numerico del evento que se desea | ||
else info = {}; | ||
/////// RENOMBRAMIENTO | ||
if (info.error) { | ||
info.err = _.clone(info.error); | ||
delete info.error; | ||
} | ||
if (info.request) { | ||
info.req = _.clone(info.request); | ||
delete info.request; | ||
} | ||
}; | ||
@@ -207,7 +222,2 @@ | ||
if (info && info.slug) gate(info.slug); | ||
if (info && info.error) { | ||
gate("====================ERROR STACK BEGINS==================="); | ||
gate(info.error.stack); | ||
gate("====================ERROR STACK ENDS==================="); | ||
} | ||
if (info && info.err) { | ||
@@ -214,0 +224,0 @@ gate("====================ERR STACK BEGINS==================="); |
{ | ||
"name": "hologger", | ||
"version": "1.1.3", | ||
"version": "1.1.4", | ||
"description": "Holistic logging library for NodeJS", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
@@ -50,2 +50,12 @@ # hologger | ||
## CAVEATS | ||
A fin de facilitar la operativa interna del logger, y de ser capaz de operar de | ||
la forma mas abstracta posible en el mayor numero de casos posible, `hologger` | ||
produce la estandarizacion interna del nombre de un numero de contado de propiedades | ||
de la informacion que se le presenta a logueo, siendo estas: | ||
+ `error` => `err` | ||
+ `request` => `req` | ||
## TODO | ||
@@ -52,0 +62,0 @@ + Agregar metodo `useLibrary` para configurar la libreria de codigos a usar (breaking) |
Sorry, the diff of this file is not supported yet
34401
765
92