@petite-pluie/fetchx-logger
v0.2.0
Published
Logger plugin for FetchX HTTP client — request/response/error logging with timing and filters
Readme
@petite-pluie/fetchx-logger
Logger plugin for FetchX HTTP client.
安装
pnpm add @petite-pluie/fetchx-loggernpm install @petite-pluie/fetchx-loggeryarn add @petite-pluie/fetchx-logger使用
import { createFetchX } from '@petite-pluie/fetchx';
import { createLoggerPlugin } from '@petite-pluie/fetchx-logger';
const api = createFetchX({ baseURL: 'https://api.example.com' });
api.use(createLoggerPlugin());输出示例
→ GET /users
✓ 200 https://api.example.com/users (42ms)流式请求会在自然完成、取消、连接失败或消费失败时记录终态和总耗时。
选项
const logger = createLoggerPlugin({
// 自定义日志函数(默认 console.log)
log: (...args) => myLogger.info(...args),
// 开关
logRequest: true, // 记录请求
logResponse: true, // 记录响应
logError: true, // 记录错误
logTiming: true, // 显示耗时
// 过滤器
filterRequest: (config, context) => !context.url.includes('/health'),
filterResponse: (response, context) => response.status < 500,
filterError: (error, context) => error.code !== 'ERR_CANCELED',
});License
MIT
