Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

request-log-starter

yourusername81MIT0.1.0TypeScript support: included

Request logging middleware for Nuxt 3 applications

nuxt, nuxt3, middleware, logging, request-log

readme

Nuxt 3 Request Logger

A simple, configurable request logging middleware for Nuxt 3 applications.

Features

  • 📝 Logs HTTP requests to your Nuxt 3 application
  • ⏱️ Records response times
  • 🔒 Masks sensitive headers
  • 🧩 Configurable output format (JSON or text)
  • 🚫 Allows custom filtering of requests

Installation

# npm
npm install @nuxt3-auth-example/request-log-starter

# yarn
yarn add @nuxt3-auth-example/request-log-starter

# pnpm
pnpm add @nuxt3-auth-example/request-log-starter

Setup

Add the module to your nuxt.config.ts:

export default defineNuxtConfig({
  modules: ["@nuxt3-auth-example/request-log-starter"],

  // Optional configuration
  requestLog: {
    enabled: true,
    logBody: false,
    logHeaders: true,
    format: "json", // or 'text'
    maskHeaders: ["authorization", "cookie", "x-api-key"],
  },
});

Configuration

Option Type Default Description
enabled boolean true Enable or disable request logging
logBody boolean false Include request body in logs
logHeaders boolean false Include HTTP headers in logs
format 'json' | 'text' 'json' Output format
maskHeaders string[] ['authorization', 'cookie'] Headers to mask for privacy
filter function undefined Custom filter function

Custom Filter Function

You can provide a custom filter function to control which requests get logged:

export default defineNuxtConfig({
  modules: ["@nuxt3-auth-example/request-log-starter"],

  requestLog: {
    filter: (event) => {
      // Skip logging for static assets
      if (event.path.startsWith("/assets/") || event.path.startsWith("/_nuxt/")) {
        return false;
      }
      return true;
    },
  },
});

Log Output

JSON Format (default)

{
  "timestamp": "2023-05-12T15:43:21.123Z",
  "method": "POST",
  "url": "https://example.com/api/users",
  "statusCode": 201,
  "responseTime": 42,
  "ip": "127.0.0.1",
  "userAgent": "Mozilla/5.0...",
  "headers": {
    "content-type": "application/json",
    "authorization": "***MASKED***"
  }
}

Text Format

[2023-05-12T15:43:21.123Z] POST https://example.com/api/users 201 42ms

License

MIT