tomk79/microtime-recorder

这是一个用于记录处理中的 microtime 并查找瓶颈的调试库。

0.1.2 2019-02-03 07:13 UTC

This package is auto-updated.

Last update: 2024-08-29 04:54:35 UTC


README

这是一个用于记录处理中的 microtime 并查找瓶颈的调试库。

安装 - Install

$ composer require tomk79/microtime-recorder

用法 - Usage

<?php
$mr = new tomk79\microtimeRecorder( '/path/to/record.txt' );

$mr->rec(); // Save initial record

for( $i = 0; $i < 10000; $i ++ ){}

$mr->rec(); // Save 2nd record

首先,创建 tomk79\microtimeRecorder 的实例 $mr。之后,每次调用 $mr->rec() 时,都会保存该时刻的记录。

构造函数的第一个参数可以指定以下值。

  • String /path/to/record.txt = 当指定输出目标文件的路径时,将记录保存到文本文件中。
  • String /path/to/record.tsv = 与文本文件输出相同,但如果文件扩展名为 .tsv,则以 TSV 格式输出。
  • String /path/to/record.csv = 与文本文件输出相同,但如果文件扩展名为 .csv,则以 CSV 格式输出。
  • Boolean true = 用作文件输出的替代,将报告输出到标准输出。
  • Boolean falsenull 或省略 = 不记录。如果想在产品版代码中保留 $mr->rec() 的描述,通常应该提供 falsenull,这样 tomk79/microtime-recorder 就不会做任何事情。

输出的数据

输出的数据包括以下信息。数据会在每次执行 $mr->rec() 时输出一行。

进程 ID

保存执行时的进程 ID。

elapsed

保存上次 $mr->rec() 执行后经过的秒数。对于实例生成后首次执行的 $mr->rec(),保存的是脚本开始后经过的秒数。

FILE

保存 $mr->rec() 执行时的文件路径。

LINE

保存 $mr->rec() 执行时的行号。

values

保存 $mr->rec() 接收到的值,通过 var_dump() 获取的字符串。可以多次指定 $mr->rec() 的参数。

测试 - Test

$ cd (project directory)
$ php ./vendor/phpunit/phpunit/phpunit

更新日志 - Change Log

tomk79/microtime-recorder v0.1.2 (2019年2月3日)

  • 允许向 $mr->rec() 传递参数。

tomk79/microtime-recorder v0.1.1 (2019年2月1日)

  • 修正了 CSV, TSV 格式的列错位问题。
  • 经过秒数曾以指数表示,但为了便于查看,已修正为小数表示。

tomk79/microtime-recorder v0.1.0 (2019年1月20日)

  • 首次发布。

许可证 - License

MIT License

作者 - Author