Security News
GitHub Removes Malicious Pull Requests Targeting Open Source Repositories
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
@jsenv/logger
Advanced tools
Control verbosity of logs during a function execution.
You want to use @jsenv/logger
when you have many logs with different purposes and controls which type of logs are actually written.
jsenv-logger
github repository corresponds to @jsenv/logger
package published on github and npm package registries.
npm install @jsenv/logger
createLogger
is a function receiving a logLevel
and returning a logger
object.
import { createLogger } from "@jsenv/logger"
const functionWithLogs = ({ logLevel }) => {
const logger = createLogger({ logLevel })
logger.debug("start doing whetevr")
logger.info("some useful info")
logger.debug("doing whatever is done")
logger.warn("be careful about blah-blah")
logger.error("oops an error occured while doing whatever")
}
functionWithLogs({ logLevel: "debug" })
functionWithLogs({ logLevel: "info" })
functionWithLogs({ logLevel: "warn" })
functionWithLogs({ logLevel: "error" })
functionWithLogs({ logLevel: "off" })
— source code at src/createLogger.js.
logLevel
parameter is a string controlling verbosity of the returned logger
.
The possible logLevel values are:
"off"
"debug"
"info"
"warn"
"error"
If you are rigorous, each logLevel value is exported as a constant that you can use like this:
import { createLogger, LOG_LEVEL_INFO } from "@jsenv/logger"
createLogger({ logLevel: LOG_LEVEL_INFO })
logger
is an object with methods logging a message with a given level.
It is returned by createLogger
, and has the following shape: { debug, info, warn, error }
. Each method calls the corresponding console method or do nothing depending on the logLevel
.
import { createLogger } from "@jsenv/logger"
const logger = createLogger({ logLevel: "info" })
logger.debug("hello")
Logs nothing
import { createLogger } from "@jsenv/logger"
const logger = createLogger({ logLevel: "info" })
logger.info("hello")
Logs Hello
Using @jsenv/logger
means converting console methods into logger methods. console.info
becomes logger.info
and so on.
But keep in mind there is no logger.log
. This is because a log level named "log" would not fit into the log level hierachy below.
error > warn > info > debug
It means you have to convert console.log
into logger.debug
or logger.info
.
FAQs
Control verbosity of logs during a function execution.
We found that @jsenv/logger demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
Security News
Node.js will be enforcing stricter semver-major PR policies a month before major releases to enhance stability and ensure reliable release candidates.