
Research
/Security News
9 Malicious NuGet Packages Deliver Time-Delayed Destructive Payloads
Socket researchers discovered nine malicious NuGet packages that use time-delayed payloads to crash applications and corrupt industrial control systems.
diagnostics_channel
Advanced tools
Exposes a polyfill for the Node.js module diagnostics_channel.
As of now, the Node.js module diagnostics_channel is only available in Node ^14.17.0 || >=15.1.0.
This aim to allow using the same API on older versions of Node.
npm i diagnostics_channel
Refer to the official documentation: https://nodejs.org/api/diagnostics_channel.html
WeakReference is not available, channels will NOT be garbage collected when no reference is held in user-land. An additional function is provided to do manual cleanup if needed: dc.deleteChannel(). This should not be needed in a typical scenario. Only use this method if you know why you are doing it.const dc = require('diagnostics_channel');
const a = dc.channel('test');
const b = dc.channel('test');
// channel is memoized
console.log(a === b); // true
dc.deleteChannel('test');
const c = dc.channel('test');
// memoized channel was deleted and a new instance was memoized
console.log(a === c); // false
ERR_INVALID_ARG_TYPE is not available, a simplfied copy of this error is included.triggerUncaughtException() is not available, if an exception is thrown in a subscriber, the polyfill will instead simply re-throw the error inside a process.nextTick(), which has a similar behavior except when the process crashes because of that exception: the crash message will point to this polyfill instead of where the error was created (ie: in the subscriber).EventEmitter3 is a high-performance event emitter. It offers similar publish/subscribe functionality but is not specifically designed for diagnostics or monitoring purposes. It is more general-purpose.
The debug package allows you to create debug instances that can be turned on and off based on environment variables. It is similar in that it is used for diagnostics, but it does not provide a channel-based publish/subscribe mechanism.
Bunyan is a JSON logging library for Node.js services. It provides detailed logs and includes mechanisms for streams and serializers. While it is used for diagnostics, it is more focused on logging than the publish/subscribe pattern.
Winston is another logging library for Node.js. Similar to Bunyan, it is used for diagnostics and monitoring but is focused on logging with multiple transports, rather than a channel-based communication system.
FAQs
Exposes a polyfill for the Node.js module diagnostics_channel
The npm package diagnostics_channel receives a total of 202,599 weekly downloads. As such, diagnostics_channel popularity was classified as popular.
We found that diagnostics_channel 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.

Research
/Security News
Socket researchers discovered nine malicious NuGet packages that use time-delayed payloads to crash applications and corrupt industrial control systems.

Security News
Socket CTO Ahmad Nassri discusses why supply chain attacks now target developer machines and what AI means for the future of enterprise security.

Security News
Learn the essential steps every developer should take to stay secure on npm and reduce exposure to supply chain attacks.