UNPKG

@future-widget-lab/logger

Version:

A good enough logger for server-side oriented applications.

3 lines (2 loc) 1.87 kB
"use strict";var e=require("loglevel"),a=function(e){var a=e.tag,t=e.debugArgumentName,l=e.allTag;try{var r=process.env[t]||"";if(!r)return!1;var n=r||"";if(0===n.length)return!1;switch(!0){case n===l:return!0;case"string"==typeof n:return n.split(",").includes(a);default:return!1}}catch(e){return!1}};exports.createLogger=function(t){var l=t.allTag,r=void 0===l?"all":l,n=t.debugArgumentName,o=void 0===n?"DEBUG":n,i=t.shouldDebug,s=void 0===i?a:i,m=t.debugEmoji,g=void 0===m?"🕵":m,u=t.errorEmoji,v=void 0===u?"📕":u,d=t.infoEmoji,p=void 0===d?"📘":d,c=t.traceEmoji,f=void 0===c?"📓":c,E=t.warnEmoji,R=void 0===E?"📒":E,y=t.onMessage,D=t.onAfterMessage;return e.setDefaultLevel(t.level),{debug:function(a,t,l){if(s({tag:a,allTag:r,debugArgumentName:o})){var n=(new Date).toISOString(),i=y?y({level:"DEBUG",timestamp:n,payload:t,message:l}):(g||"🕵")+" ["+n+"] [DEBUG] ["+a+"] "+l;e.debug(i,t),null==D||D({level:"DEBUG",timestamp:n,payload:t,message:l})}},error:function(a,t){var l=(new Date).toISOString(),r=y?y({level:"ERROR",timestamp:l,payload:a,message:t}):(v||"📕")+" ["+l+"] [ERROR] "+t;e.error(r,a),null==D||D({level:"ERROR",timestamp:l,payload:a,message:t})},info:function(a,t){var l=(new Date).toISOString(),r=y?y({level:"INFO",timestamp:l,payload:a,message:t}):(p||"📘")+" ["+l+"] [INFO] "+t;e.info(r,a),null==D||D({level:"INFO",timestamp:l,payload:a,message:t})},trace:function(a,t){var l=(new Date).toISOString(),r=y?y({level:"TRACE",timestamp:l,payload:a,message:t}):(f||"📓")+" ["+l+"] [TRACE] "+t;e.trace(r,a),null==D||D({level:"TRACE",timestamp:l,payload:a,message:t})},warn:function(a,t){var l=(new Date).toISOString(),r=y?y({level:"WARN",timestamp:l,payload:a,message:t}):(R||"📒")+" ["+l+"] [WARN] "+t;e.warn(r,a),null==D||D({level:"WARN",timestamp:l,payload:a,message:r})}}}; //# sourceMappingURL=logger.cjs.production.min.js.map