游乐游手机版
首页/编程语言/文章详情

Ubuntu Node.js日志中查看并发请求的方法

时间:2026-07-02 06:45
在Ubuntu环境下查看Node js并发请求可通过两种方法:一是借助pm2进程管理器,结合grep和wc命令实时统计日志中请求数量;二是在代码中加入morgan日志中间件,记录请求后使用grep和wc统计,辅助定位问题。

在Ubuntu环境下排查Node.js应用的并发请求情况,其实比想象中要直接得多。不少开发者习惯直接盯着终端日志看,但面对大量请求时,总得有点“工具思维”才行。下面分享两种实战中很管用的方法,分别对应不同的场景需求。

Ubuntu Node.js日志中如何查看并发请求

方法一:借助pm2进程管理器

pm2 是Node.js生态里最常用的进程管理工具之一,它不仅负责进程守护,还能帮你轻松查看日志。如果还没装pm2,先全局安装一下:

sudo npm install pm2 -g

然后用pm2启动你的应用,比如:

pm2 start app.js --name my-app

接下来就是重点——查看并发请求数。pm2的日志输出里,我们可以配合 grepwc 来过滤计数。假设你的应用日志里每条请求都包含“Request”关键字(具体关键字取决于你写的日志格式),那么一行命令就能搞定:

pm2 logs my-app | grep "Request" | wc -l

这条命令会实时统计当前日志流中间出现的请求数量。当然,如果你想要的是某个时间段内的并发峰值,可以结合 tail 或特定时间戳来进一步筛选。

方法二:在应用代码里加入请求日志中间件

如果不想依赖pm2的日志系统,或者需要更精细的请求记录,直接在应用里挂一个日志中间件是更灵活的做法。以Express为例,最流行的选择是 morgan

先安装:

npm install morgan

然后在你应用入口文件里加上:

const express = require('express');
const morgan = require('morgan');
const app = express();

app.use(morgan('combined'));

// 你的路由和其他业务逻辑
app.listen(3000, () => {
  console.log('Server is running on port 3000');
});

这样,每个HTTP请求都会按照Apache combined格式输出到控制台。如果你想持续观察实时日志,用 tail -f 跟踪输出文件即可——前提是你把morgan的日志写入了文件:

tail -f /path/to/your/nodejs/app/logs/output.log

至于如何统计并发请求数,思路跟方法一一样:

grep "GET" /path/to/your/nodejs/app/logs/output.log | wc -l

这里统计的是HTTP GET请求的数量。如果你需要统计POST、PUT等其他方法,把 GET 换成对应关键字即可。需要注意的是,这种方法本质上统计的是“已记录的请求总数”,并非真正的瞬时并发数。想要精确的并发数,更专业的做法是用 prometheusclinic.js 这类工具,但在日常调试中,上面两种方法已经足够快速定位问题了。

来源:https://www.yisu.com/ask/20267348.html
上一篇Ubuntu Node.js日志性能监控方法 下一篇Ubuntu Node.js日志分析助力系统稳定性提升
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
深入解析 TransactionProxyFactoryBean 功能实现与实战案例
编程语言 · 2026-07-02

深入解析 TransactionProxyFactoryBean 功能实现与实战案例

本文通过一个订单处理系统的实际案例,探讨了Spring框架中TransactionProxyFactoryBean的功能实现。文章分析了其如何通过代理模式为普通JavaBean添加声明式事务管理能力,详细阐述了其配置方式、内部工作机制,包括如何创建AOP代理以及如何与PlatformTransactionManager协作。最后,通过对比现代基于注解的事务管

TransactionProxyFactoryBean 在 Java 编程中的应用与配置详解
编程语言 · 2026-07-02

TransactionProxyFactoryBean 在 Java 编程中的应用与配置详解

本文探讨了TransactionProxyFactoryBean在Spring框架中的应用,重点解析其作为声明式事务管理核心组件的工作原理。文章阐述了该工厂Bean如何通过AOP代理机制为目标对象自动添加事务边界,详细说明了其关键配置属性如事务管理器、事务属性及目标对象的设置方法,并分析了其内部代理创建流程。最后,讨论了其优势与在现代Spring应用中的演进

WebService实战案例详解与应用场景解析
编程语言 · 2026-07-02

WebService实战案例详解与应用场景解析

本文通过一个具体的订单查询案例,深入解析WebService的核心概念与实战应用。内容涵盖WebService的基本原理、使用Java和CXF框架构建服务端与客户端的完整步骤,以及XML数据绑定、服务发布与调用等关键技术细节。旨在为开发者提供清晰、实用的WebService开发指导,帮助理解其在实际项目中的集成与通信机制。

HttpClient与其他HTTP库性能功能对比分析
编程语言 · 2026-07-02

HttpClient与其他HTTP库性能功能对比分析

在Java开发中,处理HTTP请求有多种库可选,其中ApacheHttpClient以其成熟稳定著称。本文对比分析了HttpClient与其他主流HTTP库(如JDK原生HttpURLConnection、OkHttp、SpringRestTemplate及Retrofit)在功能特性、性能表现、易用性及适用场景上的差异,旨在帮助开发者根据项目需求,如对连接

MemSQL数据库实战应用案例深度解析
编程语言 · 2026-07-02

MemSQL数据库实战应用案例深度解析

本文探讨了MemSQL在实时分析场景中的实战应用。通过剖析一个典型的电商实时用户行为分析项目案例,阐述了MemSQL如何利用其混合事务 分析处理能力、内存优化与列式存储特性,高效处理高并发数据流与复杂查询。文章重点介绍了技术选型考量、架构设计、性能优化策略及实际效果,为面临类似实时数据处理挑战的项目提供参考。