Catch every request. Copy it. Ship the bug report.
A Chrome extension for QA teams. HawkLogger intercepts fetch network requests
on any webpage, shows them in a persistent side panel, and lets you copy a full
request and response snapshot as Markdown.
No DevTools required. The side panel stays open while you navigate.
- Instant visual status for failed requests, including 4xx, 5xx, and network errors.
- Filter by HTTP method, status class, or search URL/body.
- One-click Markdown copy with request, response, headers, body, timing, and error data.
- Auto-redacts
Authorization,cookie,token, and other sensitive keys. - Auto-captures requests before the side panel is opened.
- Capture settings for all sites or saved sites only.
- Per-tab isolation with a bounded in-memory history.
- Clears automatically on page navigation.
- Failure Snapshot: opt-in, per-data-type capture of console logs, cookies,
localStorage, andsessionStorageattached automatically to failed requests only, so a dev or QA engineer who missed the moment a request failed can still retrieve the full context afterward. See Failure Snapshot below. - Export All: copy every visible (filtered) log as one Markdown file, built on a background Web Worker so exporting a large session never freezes the panel.
- Copy as cURL: one click to get a ready-to-paste, redacted
curlcommand for any request, alongside the existing Markdown copy. - Light / dark / system theme, matched to the OS by default and switchable per-panel from the toolbar.
- Keyboard shortcuts:
/focuses search,Esccloses Settings or blurs search.
Toggle these independently in Settings. Everything is off by default, scoped to failed requests only (network errors, 4xx, 5xx), size-capped before it's ever stored, and redacted the same way headers already are before it's shown or copied:
- Console logs — the last ~20
console.*calls (plus uncaught errors and unhandled promise rejections) leading up to the failure. - Cookies — read via
chrome.cookies, which also seeshttpOnlycookies a page script cannot. - Local Storage / Session Storage — a capped snapshot of the page's own storage at failure time.
Nothing captured here ever leaves the device; it's stored the same way as
the rest of a log entry (chrome.storage.session, cleared on navigation).
npm install
npm run buildThen load the extension in Chrome:
- Open
chrome://extensions. - Enable Developer mode.
- Click Load unpacked.
- Select the
dist/folder. - Click the HawkLogger toolbar icon to open the side panel.
- Open any website.
- Network requests are captured automatically, even before the side panel opens.
- Open the HawkLogger side panel when you need to inspect or copy captured logs.
- Click a request row to expand it.
- Click Copy as MD for the full Markdown snapshot, or Copy as cURL for a
redacted
curlcommand. - Paste into your bug ticket, team chat, or terminal.
Use the Errors button to show only failed requests. Use Settings to choose all-site capture or saved-site-only capture, and to toggle Failure Snapshot data types. Use the theme switch in the top-right to match system, light, or dark.
Every copied snapshot includes request and response headers, bodies, duration, timestamp, and network error data when available. Sensitive keys are redacted before display and before copy.
- Requests fired before injection in the first few milliseconds of page load may be missed.
- Logs are cleared on page navigation, extension reload, or browser restart.
- Binary response bodies are not captured as structured data.
- Failure Snapshot data is size-capped (see
src/utils/limits.ts); very large storage or console output is truncated rather than dropped.
- XHR support.
- Console log capture with request correlation (Failure Snapshot).
- Export all logs as a single Markdown file.
- Persist logs across page reload with
chrome.storage.session. - Light / dark / system theme.
- Copy as cURL.
- Custom redaction rules.
- Pin/bookmark specific requests so they survive a navigation-triggered clear.
- Chrome Web Store publication.
See CONTRIBUTING.md.
MIT