awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
expressjs avatar

expressjs/morgan

0
View on GitHub↗
8,182 stars·554 forks·JavaScript·MIT·13 views

Morgan

Morgan is a Node.js HTTP logging middleware designed to record incoming requests and outgoing responses. It captures request metadata and timing to facilitate API request auditing and server performance monitoring.

The project utilizes token-based string interpolation and custom log tokens to extract specific properties from HTTP objects. It supports multi-destination logging by routing formatted log strings to various writable streams and employs log output sanitization to escape control characters.

Additional capabilities include predicate-based log filtering to conditionally omit entries and the ability to trigger immediate log timing upon receiving a request.

Features

  • HTTP Traffic Logging - Provides a dedicated middleware for recording incoming and outgoing HTTP traffic in Node.js applications.
  • Token-Based Interpolation - Uses named tokens and extractor functions to dynamically build log strings from HTTP request and response metadata.
  • Request Middleware - Provides middleware to intercept the Node.js request-response cycle for metadata and timing capture.
  • Application API Auditing - Captures detailed HTTP metadata to create an audit trail of all API interactions.
  • Request Logging - Records details of incoming and outgoing HTTP traffic for diagnostic and monitoring purposes.
  • Web Server Performance Monitoring - Tracks response times and status codes to identify slow endpoints and frequent server errors.
  • Log Token Extractors - Provides custom tokens that extract specific metadata from requests and responses to inject into log entries.
  • Log String Sanitizers - Sanitizes log output by escaping control characters to prevent log injection attacks.
  • Character Escaping - Escapes non-printable control characters in request data to prevent log injection attacks.
  • Log Entry Filters - Allows conditionally omitting log entries based on custom boolean predicate functions.
  • Writable Stream Integration - Routes formatted log messages to any Node.js writable stream, including the console and file system.
  • Log Event Filters - Prevents specific requests from being logged based on custom conditions, such as HTTP status codes.
  • Application Log Redirection - Manages application logs by routing HTTP request data to various output destinations and filtering noise.
  • Application Log Routing - Directs log entries to specific writable streams like the console or rotating files.
  • Request Timing Logs - Supports immediate log writing upon request receipt to capture timing without waiting for the response.
  • Database and Backend - HTTP request logger middleware for Node.js applications.
  • Loggers, Errors & Reporting - Listed in the “Loggers, Errors & Reporting” section of the Awesome Micro awesome list.

Star history

Star history chart for expressjs/morganStar history chart for expressjs/morgan

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Morgan

Similar open-source projects, ranked by how many features they share with Morgan.
  • qos-ch/logbackqos-ch avatar

    qos-ch/logback

    3,211View on GitHub↗

    Logback is a Java logging framework used to record system events and diagnostic messages through a programmable API. It serves as a concrete implementation of the Simple Logging Facade for Java (SLF4J) and provides a structured logging engine for outputting events in machine-readable formats like JSON. The system distinguishes itself through an asynchronous log processor that utilizes circular queues and background workers to reduce performance overhead. It also features a log file rotation manager for size-based or time-based rollover with automatic compression, and the ability to update log

    Java
    View on GitHub↗3,211
  • revel/revelrevel avatar

    revel/revel

    13,224View on GitHub↗

    Revel is a full-stack web framework and toolkit for building applications with the Go language. It implements a model-view-controller architecture to separate business logic from user interface rendering, providing a comprehensive system for routing, parameter binding, and session management. The project distinguishes itself with a high-productivity development environment featuring automatic code compilation and hot-reloading, which refreshes the application state and templates upon file changes without requiring manual restarts. It also employs reflection-based parameter binding to automati

    Go
    View on GitHub↗13,224
  • luraproject/luraluraproject avatar

    luraproject/lura

    6,780View on GitHub↗

    Lura is an API gateway and traffic router that directs network requests to backend services using a configurable pipeline of processing steps. It functions as a backend load balancer and a request middleware engine designed to validate, modify, and transform incoming requests and responses. The system specializes in API response aggregation, allowing it to execute concurrent requests to multiple backend services and merge the results into a single unified output. This includes the ability to perform dynamic response mapping by renaming fields and filtering data to optimize the final client pa

    Goapi-gatewayapisbackend-services
    View on GitHub↗6,780
  • gofiber/recipesgofiber avatar

    gofiber/recipes

    3,427View on GitHub↗

    This project is a comprehensive library of reference implementations and patterns for building web applications using the Go Fiber framework. It provides curated templates and implementation guides for creating REST APIs, web servers, and structured backend services. The repository serves as a practical resource for applying architectural patterns, including Clean and Hexagonal architectures, as well as port-and-adapter decoupling. It offers detailed examples for integrating common web features such as OAuth2 authentication, JWT verification, WebSockets for real-time communication, and server

    Gocookbookexamplesfiber
    View on GitHub↗3,427
See all 30 alternatives to Morgan→

Frequently asked questions

What does expressjs/morgan do?

Morgan is a Node.js HTTP logging middleware designed to record incoming requests and outgoing responses. It captures request metadata and timing to facilitate API request auditing and server performance monitoring.

What are the main features of expressjs/morgan?

The main features of expressjs/morgan are: HTTP Traffic Logging, Token-Based Interpolation, Request Middleware, Application API Auditing, Request Logging, Web Server Performance Monitoring, Log Token Extractors, Log String Sanitizers.

What are some open-source alternatives to expressjs/morgan?

Open-source alternatives to expressjs/morgan include: qos-ch/logback — Logback is a Java logging framework used to record system events and diagnostic messages through a programmable API.… revel/revel — Revel is a full-stack web framework and toolkit for building applications with the Go language. It implements a… luraproject/lura — Lura is an API gateway and traffic router that directs network requests to backend services using a configurable… gofiber/recipes — This project is a comprehensive library of reference implementations and patterns for building web applications using… serilog/serilog — Serilog is a structured logging library for .NET applications that records events as rich data objects instead of… unjs/consola — Consola is a diagnostic logging utility and log output manager that provides a unified interface for Node.js and web…