在开发 Node.js 应用程序时,我们经常需要监控应用程序的运行时状态,以便及时发现和解决问题。PM2 是一个流行的进程管理器,可以帮助我们管理 Node.js 应用程序的进程。LogStash 是一个强大的日志管理工具,可以帮助我们收集和分析应用程序的日志数据。本文将介绍如何使用 PM2 集成 LogStash,以提供对 Node.js 应用程序运行时状态的异常数据记录和分析。
安装和配置 PM2
首先,我们需要安装 PM2。可以使用以下命令进行安装:
npm install pm2 -g
安装完成后,我们可以使用 pm2 start
命令启动 Node.js 应用程序。例如,我们可以使用以下命令启动一个简单的 HTTP 服务器:
-- -------------------- ---- ------- ----- ---- - ---------------- ----- ------ - ----------------------- ---- -- - ------------------- --------------- --------- --- ------------------- -- -- - ------------------- -- --------- -- ---- ------- ---展开代码
将上述代码保存为 app.js
文件,并使用以下命令启动应用程序:
pm2 start app.js
现在,我们可以使用 pm2 list
命令查看应用程序的状态:
┌─────┬──────────┬──────────────┬──────┬────────┬─────────┬────────┬─────┬───────────┬──────────┬──────────┐ │ id │ name │ namespace │ mode │ pid │ status │ uptime │ cpu │ mem │ user │ watching │ ├─────┼──────────┼──────────────┼──────┼────────┼─────────┼────────┼─────┼───────────┼──────────┼──────────┤ │ 0 │ app │ default │ fork │ 12345 │ online │ 1m │ 0% │ 25.2 MB │ username │ enabled │ └─────┴──────────┴──────────────┴──────┴────────┴─────────┴────────┴─────┴───────────┴──────────┴──────────┘
安装和配置 LogStash
接下来,我们需要安装和配置 LogStash。LogStash 可以通过多种方式安装,本文将使用 Docker 进行安装。可以使用以下命令启动 LogStash 容器:
docker run -d -p 5044:5044 logstash:7.14.1
LogStash 默认监听 5044 端口,我们需要将应用程序的日志数据发送到该端口。可以使用 pm2 install
命令安装 LogStash 插件:
pm2 install pm2-logstash
安装完成后,我们可以使用 pm2 set pm2-logstash:serverUrl
命令配置 LogStash 服务器的地址和端口号。例如,如果 LogStash 服务器的地址为 logstash.example.com
,端口号为 5044
,可以使用以下命令进行配置:
pm2 set pm2-logstash:serverUrl "logstash.example.com:5044"
收集和分析日志数据
现在,我们已经完成了 PM2 和 LogStash 的安装和配置。应用程序的日志数据将被发送到 LogStash 服务器,并可以使用 Kibana 进行分析和可视化。Kibana 是一个基于 Web 的分析和可视化平台,可以帮助我们轻松地分析和可视化日志数据。
首先,我们需要在 Kibana 中创建一个索引模式。索引模式用于告诉 Kibana 如何解析日志数据。可以使用以下步骤创建索引模式:
- 打开 Kibana 控制台
- 点击左侧菜单栏的
Management
按钮 - 点击
Index Patterns
,然后点击Create index pattern
- 输入索引模式名称,例如
pm2-*
- 选择
@timestamp
字段作为时间字段 - 点击
Create index pattern
现在,我们可以使用 Kibana 的搜索功能查找应用程序的日志数据。可以使用以下搜索语句查找所有日志数据:
index:pm2-*
我们可以使用 Kibana 的可视化功能创建仪表板,以便更好地理解应用程序的运行时状态。可以使用以下步骤创建仪表板:
- 打开 Kibana 控制台
- 点击左侧菜单栏的
Dashboard
按钮 - 点击
Create Dashboard
,然后选择Visualizations
- 选择要使用的可视化工具,例如
Line chart
- 配置可视化工具的参数,例如选择要显示的字段和时间范围
- 点击
Save
,然后输入仪表板名称
现在,我们已经完成了 PM2 和 LogStash 的集成,可以使用 Kibana 对应用程序的运行时状态进行异常数据记录和分析。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/67da3e11a941bf7134213a94