feat(admin): XHProf 性能日志五张表 Scheme 迁移与模型

This commit is contained in:
augushong
2026-08-14 22:04:52 +08:00
parent da388a8c4f
commit 7e73902325
15 changed files with 478 additions and 0 deletions

View File

@@ -0,0 +1,31 @@
<?php
use think\migration\Migrator;
/**
* XHProf 性能日志 - 采样记录表
*
* 每次被采样的请求一条记录。耗时字段库内统一微秒、内存统一字节,展示层换算。
*/
class XhprofRun extends Migrator
{
public function change()
{
$table = $this->table('xhprof_run', ['id' => false, 'primary_key' => ['id']])
->setComment('XHProf 性能采样记录(每次请求一条)')
->addColumn('id', 'integer', ['limit' => 11, 'null' => false, 'signed' => false, 'identity' => true, 'comment' => '主键ID'])
->addColumn('node_id', 'string', ['limit' => 64, 'null' => false, 'default' => 'default', 'comment' => '节点ID区分不同采集节点'])
->addColumn('url', 'string', ['limit' => 500, 'null' => false, 'comment' => '请求完整 URL超长截断'])
->addColumn('simple_url', 'string', ['limit' => 255, 'null' => false, 'default' => '', 'comment' => '规范化 URL去 query、数字段替换聚合用'])
->addColumn('method', 'string', ['limit' => 10, 'null' => false, 'default' => '', 'comment' => 'HTTP 方法'])
->addColumn('wall_time', 'biginteger', ['default' => 0, 'comment' => '总耗时微秒main() 的 wt'])
->addColumn('cpu_time', 'biginteger', ['default' => 0, 'comment' => 'CPU 耗时微秒main() 的 cpu'])
->addColumn('memory_peak', 'biginteger', ['default' => 0, 'comment' => '内存峰值字节main() 的 pmu'])
->addColumn('request_time', 'decimal', ['precision' => 12, 'scale' => 3, 'default' => 0, 'comment' => '请求开始时间REQUEST_TIME_FLOAT 浮点秒)'])
->addColumn('create_time', 'integer', ['limit' => 11, 'comment' => '入库时间戳', 'signed' => false])
->addIndex(['simple_url', 'request_time'], ['name' => 'idx_simple_url_time'])
->addIndex(['request_time'], ['name' => 'idx_request_time'])
->addIndex(['wall_time'], ['name' => 'idx_wall_time'])
->create();
}
}