mirror of
https://gitee.com/ulthon/ulthon_admin.git
synced 2026-08-30 12:45:32 +08:00
- NginxAccessLog + NginxLogPosition Scheme 加 #[Component] 注解 - Scheme Table name 补 ul_ 前缀(curd 严格校验要求) - curd 生成 nginx 模块完整后台(controller/model/view/js) - Base/App 双层只读控制器(参照 TimerLogBase 范式) - AccessLogBase: add/edit/delete/modify 全部 error - LogPositionBase: 同上 - 视图改造: - access_log 裁剪到 8 列核心字段(time_local/method/uri/status/remote_addr/request_time/body_bytes_sent/http_user_agent) - status/request_time 自定义 badge 渲染 - toolbar 清空 + operat 仅保留详情(B 类只读页面) - log_position 全字段 + 只读化 - HTTP 验证:index 200 OK + add/edit/delete/modify 全部返回错误
119 lines
6.6 KiB
PHP
119 lines
6.6 KiB
PHP
<div class="layuimini-container detail-container">
|
||
<div class="layuimini-main">
|
||
<div class="layui-card detail-card">
|
||
<div class="layui-card-header detail-header">
|
||
<div class="layui-row">
|
||
<div class="layui-col-md9">
|
||
<h2 class="detail-title">#{$row.id} {$title}</h2>
|
||
<div class="detail-id">ID: {$row.id}</div>
|
||
</div>
|
||
<div class="layui-col-md3 text-right detail-actions">
|
||
<button class="layui-btn layui-btn-primary" layuimini-content-href="{$Request.param.backTagId}" data-back="1">返回</button>
|
||
<button class="layui-btn" onclick="location.href='{:url("edit", ["id" => $row.id])}'">编辑</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="layui-card-body detail-content">
|
||
<div class="layui-row layui-col-space12">
|
||
<!-- 左侧主体内容 -->
|
||
<div class="layui-col-md8 detail-main">
|
||
<div class="detail-field-group">
|
||
<div class="detail-field-item">
|
||
<div class="detail-field-label">日志文件绝对路径</div>
|
||
<div class="detail-field-value">
|
||
{notempty name="row.file_path"}
|
||
{$row.file_path}
|
||
{else/}
|
||
<span class="layui-text-em">暂无数据</span>
|
||
{/notempty}
|
||
</div>
|
||
</div>
|
||
<div class="detail-field-item">
|
||
<div class="detail-field-label">文件 inode,用于检测日志轮转</div>
|
||
<div class="detail-field-value">
|
||
{notempty name="row.inode"}
|
||
{$row.inode}
|
||
{else/}
|
||
<span class="layui-text-em">暂无数据</span>
|
||
{/notempty}
|
||
</div>
|
||
</div>
|
||
<div class="detail-field-item">
|
||
<div class="detail-field-label">上次读取到的字节偏移</div>
|
||
<div class="detail-field-value">
|
||
{notempty name="row.offset"}
|
||
{$row.offset}
|
||
{else/}
|
||
<span class="layui-text-em">暂无数据</span>
|
||
{/notempty}
|
||
</div>
|
||
</div>
|
||
<div class="detail-field-item">
|
||
<div class="detail-field-label">上次读取时间戳</div>
|
||
<div class="detail-field-value">
|
||
{notempty name="row.last_read_time"}
|
||
{$row.last_read_time|date="Y-m-d H:i:s"}
|
||
{else/}
|
||
<span class="layui-text-em">暂无数据</span>
|
||
{/notempty}
|
||
</div>
|
||
</div>
|
||
<div class="detail-field-item">
|
||
<div class="detail-field-label">上次最后一行的 md5 哈希(容错校验)</div>
|
||
<div class="detail-field-value">
|
||
{notempty name="row.last_line_hash"}
|
||
{$row.last_line_hash}
|
||
{else/}
|
||
<span class="layui-text-em">暂无数据</span>
|
||
{/notempty}
|
||
</div>
|
||
</div>
|
||
<div class="detail-field-item">
|
||
<div class="detail-field-label">解析失败累计次数</div>
|
||
<div class="detail-field-value">
|
||
{notempty name="row.parse_fail_count"}
|
||
{$row.parse_fail_count}
|
||
{else/}
|
||
<span class="layui-text-em">暂无数据</span>
|
||
{/notempty}
|
||
</div>
|
||
</div>
|
||
<div class="detail-field-item">
|
||
<div class="detail-field-label">解析失败样本行(最多保留若干条)</div>
|
||
<div class="detail-field-value" style="white-space: pre-wrap;">
|
||
{notempty name="row.parse_fail_samples"}
|
||
{$row.parse_fail_samples|raw}
|
||
{else/}
|
||
<span class="layui-text-em">暂无内容</span>
|
||
{/notempty}
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
<!-- 右侧基础信息 -->
|
||
<div class="layui-col-md4 detail-side">
|
||
<h3 class="detail-side-title">基础信息</h3>
|
||
<div class="detail-field-group">
|
||
<div class="detail-field-item">
|
||
<div class="detail-field-label">ID</div>
|
||
<div class="detail-field-value">{$row.id}</div>
|
||
</div>
|
||
<div class="detail-field-item">
|
||
<div class="detail-field-label">创建时间戳</div>
|
||
<div class="detail-field-value">
|
||
{notempty name="row.create_time"}
|
||
{$row.create_time|date="Y-m-d H:i:s"}
|
||
{else/}
|
||
<span class="layui-text-em">暂无数据</span>
|
||
{/notempty}
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div> |