
Research
/Security News
Weaponizing Discord for Command and Control Across npm, PyPI, and RubyGems.org
Socket researchers uncover how threat actors weaponize Discord across the npm, PyPI, and RubyGems ecosystems to exfiltrate sensitive data.
@fastify/diagnostics-channel
Advanced tools
Note This package has been deprecated;
diagnostics_channel
is now built into Fastify v5.
npm i @fastify/diagnostics-channel
Plugin version | Fastify version |
---|---|
^5.x | ^5.x |
^4.x | ^4.x |
^1.x | ^3.x |
Please note that if a Fastify version is out of support, then so are the corresponding versions of this plugin in the table above. See Fastify's LTS policy for more details.
Register as a plugin. This will add some hooks that provide information through diagnostics_channel
const fastify = require('fastify')()
fastify.register(require('@fastify/diagnostics-channel'), {})
Note: check examples/ to further information
The channels are prefixed by: fastify.{HOOK_NAME}
Channel: fastify.onRoute
This event is sent at every route registered passing a routeOptions
object
const dc = require('node:diagnostics_channel')
const onRoute = dc.channel('fastify.onRoute')
onRoute.subscribe((routeOptions) => {
routeOptions.method
routeOptions.schema
routeOptions.url // the complete URL of the route, it will include the prefix if any
routeOptions.path // `url` alias
routeOptions.routePath // the URL of the route without the prefix
routeOptions.bodyLimit
routeOptions.logLevel
routeOptions.logSerializers
routeOptions.prefix
})
Channel: fastify.onResponse
This event is sent on every response sent by the server, it propagates an object containing: request
object and reply
object
const dc = require('node:diagnostics_channel')
const onResponse = dc.channel('fastify.onResponse')
onResponse.subscribe((data) => {
data.request
data.reply
})
Channel: fastify.onError
This event is sent when an error is thrown during the Fastify lifecycle.
The message data is an object containing a request
object, reply
object, and Error object
const dc = require('node:diagnostics_channel')
const onError = dc.channel('fastify.onError')
onError.subscribe((data) => {
data.request
data.reply
data.error // error object thrown
})
Channel: fastify.onTimeout
This event is sent when a request spends more time than connectionTimeout
specifies. For further information about connectionTimeout
check the Fastify documentation.
The message data is an object containing a request
object, reply
object, and connectionTimeout
value
Note: by default Fastify does not limit the request time.
const dc = require('node:diagnostics_channel')
const onTimeout = dc.channel('fastify.onTimeout')
onTimeout.subscribe((data) => {
data.connectionTimeout
data.reply
data.request
})
Channel: fastify.onRequest
This event is sent when a request is received; the message data is an object containing a request
object and reply
object
const dc = require('node:diagnostics_channel')
const onRequest = dc.channel('fastify.onRequest')
onRequest.subscribe((data) => {
data.request
data.reply
})
Licensed under MIT.
FAQs
Plugin to deal with diagnostics_channel on Fastify
We found that @fastify/diagnostics-channel demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 19 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 uncover how threat actors weaponize Discord across the npm, PyPI, and RubyGems ecosystems to exfiltrate sensitive data.
Security News
Socket now integrates with Bun 1.3’s Security Scanner API to block risky packages at install time and enforce your organization’s policies in local dev and CI.
Research
The Socket Threat Research Team is tracking weekly intrusions into the npm registry that follow a repeatable adversarial playbook used by North Korean state-sponsored actors.