alert('无访问权限');location.href='login.php';";
exit;
}
// 会话超时:30分钟无操作自动登出,与admin后台统一
$expire = 1800;
if (empty($_SESSION['user_id']) || (time() - $_SESSION['login_time'] > $expire)) {
session_destroy();
header("Location: login.php");
exit;
}
// 刷新登录计时
$_SESSION['login_time'] = time();
$userName = htmlspecialchars($_SESSION['username']);
$userRole = $_SESSION['role'];
$roleText = $userRole === 'admin' ? '管理员' : '只读用户';
// 读取全局系统配置(admin后台保存后同步生效)
$dbHost = "10.150.117.190";
$dbUser = "root";
$dbPwd = "hp93000";
$dbName = "alert_mail_stat";
$connConfig = mysqli_connect($dbHost, $dbUser, $dbPwd, $dbName);
mysqli_set_charset($connConfig, "utf8mb4");
$configSql = "SELECT k,v FROM sys_config";
$configRes = mysqli_query($connConfig, $configSql);
$sysConfig = [];
while ($row = mysqli_fetch_assoc($configRes)) {
$sysConfig[$row['k']] = $row['v'];
}
mysqli_close($connConfig);
// 赋值全局配置
$pageTitle = htmlspecialchars($sysConfig['page_title'] ?? "告警监控系统");
$themeColor = htmlspecialchars($sysConfig['theme_color'] ?? "#409eff");
$pageSize = $sysConfig['page_size'] ?? "20";
$footerText = htmlspecialchars($sysConfig['footer_text'] ?? "");
$sidebarRawLinks = $sysConfig['sidebar_links'] ?? "";
// 读取语言配置 zh=中文 en=英文
$currentLang = $sysConfig['lang'] ?? "zh";
// 全局多语言词典
$langMap = [
'zh' => [
'html_lang' => 'zh-CN',
'page_subtitle' => '爱德万测试 · 运维告警监控平台',
'monitor_panel' => '监控面板',
'alert_overview' => '告警监控总览',
'disk_capacity' => '服务器磁盘容量',
'docker_mgr' => 'Docker容器管理',
'alert_list_page' => '历史告警查询',
'work_order_mgr' => '工单系统',
'system_manager' => '角色管理',
'work_order_title' => '工单管理',
'work_create' => '新建工单',
'work_edit' => '编辑工单',
'work_assign' => '分发工单',
'work_status' => '工单状态',
'work_creator' => '创建人',
'work_handler' => '处理人',
'work_content' => '工单内容/备注',
'work_title' => '工单标题',
'work_create_time' => '创建时间',
'work_update_time' => '更新时间',
'work_all_list' => '全部工单列表',
'work_no_data' => '暂无工单记录',
'work_save' => '保存',
'work_cancel' => '取消',
'work_placeholder_title' => '填写故障/需求标题',
'work_placeholder_content' => '详细描述故障、操作步骤、处理备注',
'work_select_handler' => '选择处理人(留空暂不分配)',
'quick_link' => '快捷外链',
'system_manage' => '系统管理',
'system_config' => '后台配置管理',
'current_user' => '当前用户:',
'sys_time' => '系统时间:',
'refresh_all' => '刷新全部数据',
'export_csv' => '导出告警CSV',
'logout' => '退出登录',
'lang_text' => '语言:',
'today_fire' => '今日触发告警',
'unresolved_now' => '当前未恢复告警',
'resolved_today' => '今日恢复告警',
'instance_total' => '故障实例总数',
'recovery_rate' => '告警恢复率',
'today_fire_sub' => 'Total Firing Today',
'unresolved_sub' => 'Unresolved Now',
'resolved_sub' => 'Resolved Today',
'instance_sub' => 'Affected Host Instance',
'rate_sub' => 'Daily Recovery Rate',
'top10_alert' => '今日告警频次 TOP 10',
'active_alert' => '当前未恢复活跃告警',
'alert_count' => '条未恢复故障',
'all_alert_log' => '今日全量告警明细列表',
'total_alert' => '条告警记录',
'tag' => '告警状态',
'alert_name' => '告警名称',
'instance_addr' => '实例地址',
'severity' => '告警级别',
'occur_time' => '故障发生时间',
'empty_normal' => '当前无未恢复告警,系统运行正常',
'empty_no_data' => '暂无今日告警数据',
'disk_stat' => '用户目录磁盘占用统计',
'filter_ip' => '筛选实例IP:',
'export_disk' => '导出当前表格CSV',
'all_instance' => '全部实例',
'disk_loading' => '磁盘数据加载中...',
'no_disk_data' => '暂无磁盘指标数据',
'no_ip_data' => '该实例下无目录数据',
'csv_tip' => '正在生成CSV报表,请稍候...',
'alert_axis' => '告警次数',
'data_fail' => '数据加载失败,请重新登录',
'server_fail' => '接口数据加载失败,请检查后端服务',
'disk_api_fail' => '磁盘接口异常:',
'disk_request_fail' => '请求df.php接口失败,请检查服务',
'no_export_data' => '无数据可导出'
],
'en' => [
'html_lang' => 'en',
'page_subtitle' => 'Advantest · O&M Alert Monitor Platform',
'monitor_panel' => 'Monitor Panel',
'alert_overview' => 'Alert Overview',
'disk_capacity' => 'Server Disk Capacity',
'docker_mgr' => 'Docker Manager',
'alert_list_page' => 'Alert Pagination List',
'work_order_mgr' => 'Work Order System',
'system_manager' => 'Role & Permission Manage',
'work_order_title' => 'Work Order Manage',
'work_create' => 'Create Order',
'work_edit' => 'Edit Order',
'work_assign' => 'Assign Order',
'work_status' => 'Status',
'work_creator' => 'Creator',
'work_handler' => 'Handler',
'work_content' => 'Content / Remark',
'work_title' => 'Order Title',
'work_create_time' => 'Create Time',
'work_update_time' => 'Update Time',
'work_all_list' => 'All Work Order List',
'work_no_data' => 'No order data',
'work_save' => 'Save',
'work_cancel' => 'Cancel',
'work_placeholder_title' => 'Fill fault or demand title',
'work_placeholder_content' => 'Describe fault, steps and handling remark',
'work_select_handler' => 'Select handler (empty for unassigned)',
'quick_link' => 'Quick Links',
'system_manage' => 'System Manage',
'system_config' => 'System Config',
'current_user' => 'User: ',
'sys_time' => 'System Time: ',
'refresh_all' => 'Refresh All Data',
'export_csv' => 'Export Alert CSV',
'logout' => 'Logout',
'lang_text' => 'Lang: ',
'today_fire' => 'Today Triggered Alerts',
'unresolved_now' => 'Unresolved Alerts',
'resolved_today' => 'Resolved Today',
'instance_total' => 'Affected Instances',
'recovery_rate' => 'Daily Recovery Rate',
'today_fire_sub' => 'Total Firing Today',
'unresolved_sub' => 'Unresolved Now',
'resolved_sub' => 'Resolved Today',
'instance_sub' => 'Affected Host Instance',
'rate_sub' => 'Daily Recovery Rate',
'top10_alert' => 'Top 10 Alert Frequency Today',
'active_alert' => 'Active Unresolved Alerts',
'alert_count' => ' unresolved alerts',
'all_alert_log' => 'Today Full Alert List',
'total_alert' => ' alert records',
'tag' => 'Status',
'alert_name' => 'Alert Name',
'instance_addr' => 'Instance IP',
'severity' => 'Severity',
'occur_time' => 'Occur Time',
'empty_normal' => 'No active alerts, system normal',
'empty_no_data' => 'No alert data today',
'disk_stat' => 'User Directory Disk Usage',
'filter_ip' => 'Filter IP: ',
'export_disk' => 'Export Table CSV',
'all_instance' => 'All Instances',
'disk_loading' => 'Loading disk data...',
'no_disk_data' => 'No disk data available',
'no_ip_data' => 'No directory data for this instance',
'csv_tip' => 'Generating CSV file, please wait...',
'alert_axis' => 'Alert Count',
'data_fail' => 'Data load failed, please relogin',
'server_fail' => 'API request failed, check backend service',
'disk_api_fail' => 'Disk API Error: ',
'disk_request_fail' => 'Request df.php failed, check service',
'no_export_data' => 'No data to export'
]
];
$t = $langMap[$currentLang];
// 解析侧边外链列表
$sidebarLinkList = [];
if (!empty($sidebarRawLinks)) {
$lines = explode("\n", $sidebarRawLinks);
foreach ($lines as $line) {
$line = trim($line);
if (empty($line)) continue;
$item = explode("|", $line, 2);
if (count($item) === 2) {
$sidebarLinkList[] = [
"name" => trim($item[0]),
"url" => trim($item[1])
];
}
}
}
?>
- Advantest
| IP |
Username |
Path |
Size(GB) |
|
|