andrey-tech/nginx-unit-log-analyzer-php

用于在控制台中分析 NGINX Unit 日志文件的工具

1.0.1 2024-07-28 05:39 UTC

This package is auto-updated.

Last update: 2024-08-28 05:51:06 UTC


README

NGINX Unit log analyzer logo

Latest Stable Version PHP Version Require License

NGINX Unit 日志分析器 — 这是用于分析应用程序服务器 NGINX Unit 的日志文件的实用程序。
该实用程序分析 NGINX Unit 运行应用程序的进程持续时间,精确到一秒,并以表格或图形形式在控制台中生成各种类型的报告。

内容

安装

NGINX Unit 日志分析器需要

composer require --dev andrey-tech/nginx-unit-log-analyzer-php

使用 APT (Advanced Package Tool) 安装 GNU Plot

apt install gnuplot

命令行参数和选项

./vendor/bin/nginx-unit-log-analyzer <NGINX Unit log file> [OPTIONS]

其中

  • [OPTIONS] — 命令行选项,
  • <NGINX Unit log file> — NGINX Unit 日志文件的路径,其中包含有关运行应用程序的信息
2024/06/13 13:31:06 [info] 657#657 "application-3" application started
2024/06/13 13:32:14 [notice] 151#151 app process 657 exited with code 0

命令行选项

生成的报告类型

NGINX Unit 日志分析器可以生成三种类型的报告(--report-type

  1. day — NGINX Unit 运行应用程序的进程持续时间,按小时平均并按天划分;
  2. top — 按天划分的最长和最短 NGINX Unit 运行应用程序的进程列表;
  3. graph(默认)— NGINX Unit 运行应用程序的进程持续时间图,按小时平均。

类型为 daytop 的报告以表格形式在控制台中生成。

类型为 graph 的报告以 PNG 格式的图形文件生成,并需要 GNU Plot 工具来创建。

类型为 graph 的报告可以包含以下类型的图表(--graph-types

  • quantity(默认)— NGINX Unit 运行应用程序的进程数量图,按小时平均;
  • average(默认)— NGINX Unit 运行应用程序的进程平均持续时间图,按小时平均;
  • median — NGINX Unit 运行应用程序的进程持续时间中位数图,按小时平均;
  • maximal — NGINX Unit 运行应用程序的进程最大持续时间图,按小时平均;
  • minimal — NGINX Unit 运行应用程序的进程最小持续时间图,按小时平均。

类型为 day 的报告

类型为 day 的报告片段示例

NGINX Unit log analyzer. Report type day

在报告表中

  • DATE — 指定的日期,包括时区;
  • APP — 在指定日期运行的程序名称列表;
  • Processes — NGINX Unit 运行的进程信息
    • Start — 指定的时间段,小时(从-到);
    • Amount — 在时间间隔内启动的过程数量(+n — 未完成过程数);
  • Duration — 时间间隔内执行过程的信息
    • Median中位数值;
    • Average算术平均值
    • Std dev — 时间持续性的标准差
    • Min — 最小值;
    • Max — 最大值。

NGINX Unit在表格中持续时间值的格式为
d h m s,其中:d — 天,h — 小时,m — 分钟,s — 秒。

类型为 top 的报告

类型为top的报表片段示例(针对一天)

NGINX Unit log analyzer. Report type top

在报告表中

  • DATE — 指定的日期,包括时区;
  • APP — 在指定日期运行的程序名称列表;
  • Duration — 过程执行持续时间;
  • App name — 应用程序名称;
  • Start time — 过程启动的日期和时间;
  • Exit time — 过程结束的日期和时间;
  • Start — NGINX Unit日志文件中记录过程启动的行号;
  • End — NGINX Unit日志文件中记录过程结束的行号;
  • Id — NGINX Unit中的过程标识符

表格上半部分列出的是分析日期记录的最长的20个过程;

表格下半部分列出的是分析日期记录的最短的5个过程;

列表按持续时间降序排列。

类型为 graph 的报告

包含2个图表的类型为graph的报表示例

  • 图表显示启动应用程序的NGINX Unit进程数量,并按每小时进行平均;
  • 图表显示过程执行的中位数持续时间。

NGINX Unit log analyzer. Report type graph

图表中NGINX Unit过程持续时间值的格式为
H:MM:SS,其中:H — 小时,MM — 分钟,SS — 秒。

作者

© 2024 andrey-tech

许可证

本库根据MIT许可证进行分发。