Files
ulthon_admin/database/migrations/20260814100001_xhprof_run.php

32 lines
2.0 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?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();
}
}