diff --git a/extend/base/admin/service/adminInitData/SystemMenu.php b/extend/base/admin/service/adminInitData/SystemMenu.php index db39412..3b94d43 100644 --- a/extend/base/admin/service/adminInitData/SystemMenu.php +++ b/extend/base/admin/service/adminInitData/SystemMenu.php @@ -236,7 +236,7 @@ $ul_system_menu = array( "pid" => 300, "title" => "原始访问日志", "icon" => "fa fa-file-text", - "href" => "system.nginx_access_log/index", + "href" => "nginx.access_log/index", "params" => "", "target" => "_self", "sort" => 0, @@ -247,7 +247,7 @@ $ul_system_menu = array( "pid" => 300, "title" => "读取位置管理", "icon" => "fa fa-map-marker", - "href" => "system.nginx_log_position/index", + "href" => "nginx.log_position/index", "params" => "", "target" => "_self", "sort" => 0, diff --git a/extend/base/admin/service/adminUpdateCodeData/v2.4.0.php b/extend/base/admin/service/adminUpdateCodeData/v2.4.0.php index 32feae4..5ab6e4b 100644 --- a/extend/base/admin/service/adminUpdateCodeData/v2.4.0.php +++ b/extend/base/admin/service/adminUpdateCodeData/v2.4.0.php @@ -16,8 +16,8 @@ * - system_menu 新增 4 条菜单(顶级分组 300 + 3 个子菜单 301/302/303) * 300 Nginx 日志分析(顶级分组,href 为空) * 301 访问统计仪表盘 system.nginx_log_stat/index - * 302 原始访问日志 system.nginx_access_log/index - * 303 读取位置管理 system.nginx_log_position/index + * 302 原始访问日志 nginx.access_log/index + * 303 读取位置管理 nginx.log_position/index * * 设计说明: * - 幂等 check-then-insert(先查询存在性,不存在才插入) @@ -112,7 +112,7 @@ class UpdateFunction 'pid' => 300, 'title' => '原始访问日志', 'icon' => 'fa fa-file-text', - 'href' => 'system.nginx_access_log/index', + 'href' => 'nginx.access_log/index', 'params' => '', 'target' => '_self', 'sort' => 0, @@ -123,7 +123,7 @@ class UpdateFunction 'pid' => 300, 'title' => '读取位置管理', 'icon' => 'fa fa-map-marker', - 'href' => 'system.nginx_log_position/index', + 'href' => 'nginx.log_position/index', 'params' => '', 'target' => '_self', 'sort' => 0, diff --git a/extend/base/tools/controller/timer/NginxLogCleanBase.php b/extend/base/tools/controller/timer/NginxLogCleanBase.php index 244de19..1225b14 100644 --- a/extend/base/tools/controller/timer/NginxLogCleanBase.php +++ b/extend/base/tools/controller/timer/NginxLogCleanBase.php @@ -136,9 +136,9 @@ class NginxLogCleanBase extends TimerController /** * 清理 4 张 stat 表(按 stat_date). * - * stat_date 是 strtotime('today') 起算的当天 0 点时间戳,与 raw 表 time_local 不同: - * - stat 表一行 = 一天的聚合(stat_hour 按小时拆,但 stat_date 仍是当天 0 点) - * - 阈值用 strtotime('today') - statDays*86400(而非 time() - statDays*86400) + * stat_date 是 YYYYMMDD 整数(如 20260728),不是 Unix 时间戳。 + * - stat 表一行 = 一天的聚合(stat_hour 按小时拆,但 stat_date 仍是当天 YYYYMMDD) + * - 阈值用 (int) date('Ymd', strtotime('today') - statDays*86400)(同为 YYYYMMDD 格式) * 保证整天边界,不会误删"今天聚合了 N 小时但今天整体还没过期"的数据 * * 各表独立 DELETE,不做级联(如 stat_url 不依赖 stat_hour,可单独保留)。 @@ -148,11 +148,11 @@ class NginxLogCleanBase extends TimerController */ protected function cleanStatTables(int $statDays): int { - // strtotime('today') 返回当天 0 点时间戳(整数) - $threshold = strtotime('today') - ($statDays * 86400); + // strtotime('today') 返回当天 0 点时间戳;转 YYYYMMDD 整数与 stat_date 对齐 + $threshold = (int) date('Ymd', strtotime('today') - ($statDays * 86400)); $total = 0; - Log::info("nginx_log_clean: stat 阈值 stat_date<" . date('Y-m-d', $threshold) . " ({$statDays} 天)"); + Log::info("nginx_log_clean: stat 阈值 stat_date<{$threshold} ({$statDays} 天)"); foreach (self::STAT_TABLES as $table) { $deleted = Db::name($table)