Security News
RubyGems.org Adds New Maintainer Role
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.
heimdalljs-logger
Advanced tools
heimdalljs-logger is a logging utility designed to work with the heimdalljs performance monitoring library. It provides a simple and efficient way to log messages with different levels of severity, making it easier to track and debug performance issues in your application.
Basic Logging
Allows you to log messages with different levels of severity (info, warn, error).
const logger = require('heimdalljs-logger')('my-app');
logger.info('This is an info message');
logger.warn('This is a warning message');
logger.error('This is an error message');
Custom Log Levels
Enables you to define custom log levels for more granular control over logging.
const logger = require('heimdalljs-logger')('my-app');
logger.addLevel('debug', 1000);
logger.debug('This is a debug message');
Contextual Logging
Allows you to add contextual information to your log messages, making it easier to understand the context in which a log message was generated.
const logger = require('heimdalljs-logger')('my-app');
logger.info('Starting process', { processId: 12345 });
Winston is a versatile logging library with support for multiple transports (e.g., console, file, HTTP). It offers more advanced features like log formatting, log levels, and custom transports, making it a more comprehensive solution compared to heimdalljs-logger.
Bunyan is a simple and fast JSON logging library. It provides a straightforward API for logging and includes features like log levels, serializers, and log rotation. Bunyan's focus on JSON logging makes it a good choice for structured logging, which is not a primary focus of heimdalljs-logger.
Pino is a low-overhead logging library designed for high-performance applications. It offers features like log levels, serializers, and log redirection. Pino's emphasis on performance and low overhead makes it a suitable alternative to heimdalljs-logger for applications where logging performance is critical.
var logger = require('heimdall-logger')('foo');
logger.trace('trace message');
logger.debug('debug message');
logger.info('info message');
logger.warn('warn message');
logger.error('error message');
console.log('app message');
DEBUG=foo DEBUG_LEVEL=trace foo
# => trace message
# ... debug message
# ... info message
# ... warn message
# ... error message
# ... app message
foo
# => app message
DEBUG=foo DEBUG_LEVEL=warn foo
# => warn message
# ... error message
# ... app message
var heimdall = require('heimdalljs');
var config = require('heimdalljs').configFor('logging');
config.matcher = (id) => /hai/.test(id.name);
config.depth = 2;
var logger = require('heimdalljs-logger')('foo');
heimdall.start('a');
heimdall.start('bhai');
heimdall.start('c');
heimdall.start('dhai');
logger.warn('warn message');
// => foo [bhai -> dhai] warn message
FAQs
Structured logging via heimdalljs
We found that heimdalljs-logger demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 5 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
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.
Security News
Research
Socket's threat research team has detected five malicious npm packages targeting Roblox developers, deploying malware to steal credentials and personal data.