Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Scan for outdated or missing drivers - takes under a minute3Repair Windows errors before they cause bigger problemsTo find what is calling your Fastify API, log request-scoped details such as request.id, request.ip, the method and route, and selected headers. If the service sits behind a proxy, configure Fastify’s trustProxy for the actual trusted proxy chain before relying on forwarded addresses. These clues can help locate and categorize traffic, but only your application’s verified authentication context can identify an authenticated user or service.
What Fastify can tell you about an incoming request
Fastify exposes several kinds of request metadata. They answer different questions, so treat them as evidence with different limits rather than as interchangeable ways to name a caller.
As an Amazon Associate I earn from qualifying purchases.
| Signal | Useful for | What it does not establish |
|---|---|---|
request.id |
Correlating a request with its log entries and, if your application propagates a trustworthy ID, related activity elsewhere. | The caller’s identity. If request-ID headers are enabled, an incoming value may be chosen by the client unless your application validates or replaces it. |
request.ip |
Inspecting the socket address by default, or a forwarded address when proxy trust is configured. | A person or account. A proxy, gateway, or shared network address may represent infrastructure used by multiple callers. |
request.ips |
Inspecting the forwarded address chain when trustProxy is enabled. |
A verified origin if the forwarding chain includes untrusted or spoofed data. |
Selected headers, such as user-agent |
Debugging and rough traffic categorization. | Authenticated identity; headers are supplied by the client and can be forged. |
| Application authentication result | Naming the verified API-key owner, token subject, or service principal when your authentication layer establishes one. | Anything beyond the claims and guarantees of your particular authentication implementation. |
Fastify’s Request reference says that request.ip, request.ips, and related host and protocol fields come from socket and/or forwarding metadata and “should also be treated as untrusted input.” An IP address is therefore a network clue, not proof of who made a request.
Free tools Windows power users keep installed
One-click scans. No signup required.
Log request details with Fastify
Fastify logging is disabled by default. Enable it when creating the instance, for example with { logger: true } or { logger: { level: 'info' } }. When enabled, the default logger is Pino, and request.log gives you a request-scoped logger for adding context to that request’s log entries. See the Fastify Logging guide.
#1 Best Overall
- (10/100/1G) Gigabit Bypass network tap / sniffer equivalent to port mirror on a switch.
- The two monitor/sniff ports are isolated from the network being monitored.
- Automatic bypass of device on power fail.
- Power-over-Ethernet (POE) pass-through. Rated at .75A max at 57vdc
- 5v power through USB3 port or 5v wall transformer (or both). ~500ma consumption.
A compact onRequest hook can record a useful starting set of fields:
fastify.addHook('onRequest', async (request) => {
request.log.info({
method: request.method,
route: request.routeOptions.url,
requestId: request.id,
remoteIp: request.ip,
userAgent: request.headers['user-agent']
}, 'incoming request')
})
This is an implementation pattern, not a guarantee that those fields will identify the caller. Adapt the route field to your Fastify version and logging needs. Treat every incoming header value, including user-agent, as untrusted.
Rank #2
- The SharkTap is a special purpose 10/100/1000Base-T ethernet device that allows you to 'tap into' an ethernet connection. It is intended to be used with the free Wireshark protocol analyzer or equivalent.
- Conventional switches route packets only to the intended destination port, reducing traffic but preventing a third port from seeing all packets. The SharkTap duplicates all packets to or from the Network ports to the TAP port.
- Supports 10, 100 and 1000Base-T, all ports. Power-Over-Ethernet (PoE) pass-through.
- Powered from a USB-B cable (included), draws 350mA or less.
- Other features: Auto-MDIX, so no crossover cables ever needed. Non-conductive enclosure for lab work. Will NOT route packets from TAP to Network ports.
Check proxy trust before using client IPs
Without proxy trust, request.ip is based on the socket address. With trustProxy enabled, Fastify may derive it from X-Forwarded-For; request.ips exposes the forwarded chain only when proxy trust is enabled.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Configure trust to match the real deployment: trust known proxy addresses or use a trust function that validates the immediate peer. Do not blindly trust every source if clients can also reach the Fastify origin directly. A direct client can otherwise supply misleading forwarding metadata. Consult the Fastify Server reference and use documentation for the Fastify major version installed in your application; the latest documentation is rolling and configuration details can change.
Rank #3
- Network Tap for use with 10/100/1000Base-T Ethernet link
- Reliable and high performance. Tested with maximum in-line cable length (200m) at full 1Gbps data throughput with no single packet loss
- Capable of being powered from a computer's USB port with built-in inrush current limiting circuit to prevent the computer from possible damages or disturbances by instantaneous current surge
- Compatible with Power-over-Ethernet (PoE)
- Probably the smallest portable GbE Network Tap available on the market
Use authentication context to name a caller
If the question is “Which account or service authenticated?”, inspect the result established by your application’s authentication middleware or hook—for example, a verified API-key owner or token subject. Fastify’s request metadata does not supply that identity by itself. Do not infer a user from an IP, request ID, user-agent, or arbitrary header.
Quick Recap
Best Value
- First-of-Its-Kind "One Size Fits All" Network TAP: Supports both copper and fiber Ethernet links, with speeds ranging from 100Mb/s to 10Gb/s (100M/1G/2.5G/5G/10G).
- Patented High-Gigabit Signal Duplication Technology: eliminates the need for 10G+ fanout buffer IC chips, significantly enhancing reliability while minimizing power consumption.
- Versatile Connectivity: Features two inline network ports and two monitor ports with SFP+/SFP slots, compatible with copper and fiber transceivers for data rates from 100Mb/s to 10Gb/s.
- Simplified Fiber TAP Operation: Eliminates the need to specify an optical split ratio, streamlining setup and usage.
- Real-Time Performance: Guarantees zero transmission delays, ensuring accurate data monitoring and analysis.
Rank #4
- Ethernet Test Access Port that does not require an ethernet port, for thin notebook or netbook PCs. Uses USB 3 or USB 2 port on PC (Also provides a CAT-5 TAP port)
- A 'Test Access Port' allows you to see the packets on an ethernet link. Directly supports 10-, 100- or 1000Base-T links.
- Intended to be used with the open source Wireshark program, or equivalent.
- The Gen2 SharkTapUSB features 'carbon copy' copper repeater technology for minimum impact on the monitored network. The carbon copies of bi-directional data are aggregated onto a single wired or USB Test Access Port (TAP)
- Power-over-ethernet pass through. (For power-fail bypass, search "SharkTapBYP") 400mA current. Non-conductive plastic cover. Auto cross-over for cables. USB3 cable included
Keep request logs useful and safe
- Log an intentional allow-list, such as method, route, request ID, IP metadata, and a carefully selected non-sensitive header.
- Do not dump all headers. Fastify warns that logging response headers can expose sensitive authentication data and may create privacy risks. Redact credentials such as
req.headers.authorizationwherever headers are logged. - Avoid logging full request bodies unless there is a specific, safe need. Request bodies are not yet parsed when request serializers run; the Logging guide points to a
preHandlerhook if body logging is genuinely required. Sensitive body data should be avoided or tightly controlled.
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




