0, 'path' => '/', 'domain' => '', 'secure' => true, 'httponly' => true, 'samesite' => 'Lax' ]); session_start(); session_regenerate_id(true); try { $option = array( PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::MYSQL_ATTR_MULTI_STATEMENTS => false ); $pdo = new PDO('mysql:charset=utf8mb4;dbname='.DB_NAME.';host='.DB_HOST , DB_USER, DB_PASS, $option); } catch(PDOException $e) { // 接続エラーのときエラー内容を取得する $error_message[] = $e->getMessage(); } //ログイン認証--------------------------------------------------- blockedIP($_SERVER['REMOTE_ADDR']); $is_login = uwuzuUserLogin($_SESSION, $_COOKIE, $_SERVER['REMOTE_ADDR'], "admin"); if($is_login === false){ header("Location: ../index.php"); exit; }else{ $userid = safetext($is_login['userid']); $username = safetext($is_login['username']); $loginid = safetext($is_login["loginid"]); $role = safetext($is_login["role"]); $sacinfo = safetext($is_login["sacinfo"]); $myblocklist = safetext($is_login["blocklist"]); $is_Admin = safetext($is_login["admin"]); } $notiQuery = $pdo->prepare("SELECT COUNT(*) as notification_count FROM notification WHERE touserid = :userid AND userchk = 'none'"); $notiQuery->bindValue(':userid', $userid); $notiQuery->execute(); $notiData = $notiQuery->fetch(PDO::FETCH_ASSOC); $notificationcount = $notiData['notification_count']; if(!empty($pdo)){ try { //User $count1 = $pdo->query("SELECT userid FROM account")->rowCount(); //Ueuse $count2 = $pdo->query("SELECT uniqid FROM ueuse")->rowCount(); //Emoji $count3 = $pdo->query("SELECT sysid FROM emoji")->rowCount(); // bot $count4 = $pdo->query("SELECT userid FROM account WHERE sacinfo = 'bot'")->rowCount(); // ActiveUsers $count5 = $pdo->query("SELECT userid FROM account WHERE last_login_datetime > NOW() - INTERVAL 5 MINUTE")->rowCount(); // AwayUsers $count6 = $pdo->query("SELECT userid FROM account WHERE last_login_datetime < NOW() - INTERVAL 5 MINUTE AND last_login_datetime >= NOW() - INTERVAL 15 MINUTE")->rowCount(); } catch (PDOException $e) { $count1 = 0; $count2 = 0; $count3 = 0; $count4 = 0; $count5 = 0; $count6 = 0; $error_message[] = $e->getMessage(); actionLog($userid, "error", "overview_admin", null, "統計情報の取得に失敗しました!", 4); } $migrationUserFollow = checkFollowMigrationProgress($pdo); //DB_Data try { $dbname = DB_NAME; $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // データベース内の全テーブル名を取得 $query = "SELECT table_name FROM information_schema.tables WHERE table_schema = :database"; $stmt = $pdo->prepare($query); $stmt->bindParam(':database', $dbname); $stmt->execute(); $tables = $stmt->fetchAll(PDO::FETCH_COLUMN); // 各テーブルの正確な行数を取得 $db_results = []; foreach ($tables as $table) { // 行数を取得 $rowQuery = "SELECT COUNT(*) as count FROM `$table`"; $rowStmt = $pdo->query($rowQuery); $rowCount = (int)$rowStmt->fetchColumn(); // テーブルサイズを取得 $sizeQuery = " SELECT ROUND(((data_length + index_length) / 1024 / 1024), 2) AS `Size` FROM information_schema.TABLES WHERE table_schema = :database AND table_name = :table; "; $sizeStmt = $pdo->prepare($sizeQuery); $sizeStmt->execute([':database' => $dbname, ':table' => $table]); $size = (float)$sizeStmt->fetchColumn(); // 結果を格納 $db_results[] = [ 'Table' => $table, 'Rows' => $rowCount, 'Size' => $size, ]; } // サイズで並び替え usort($db_results, function ($a, $b) { return $b['Size'] <=> $a['Size']; }); // 行数を最大桁数に揃えて0埋め $maxRows = max(array_column($db_results, 'Rows')); foreach ($db_results as &$table) { $table['Rows'] = str_pad($table['Rows'], strlen($maxRows), '0', STR_PAD_LEFT); } unset($table); // 参照を解除 } catch (PDOException $e) { $db_results = null; } } if(function_exists("disk_free_space")){ if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') { $disk = true; $totalRaw = disk_total_space('C:'); $diskTotal = ($totalRaw > 0) ? (int)$totalRaw / 1024 / 1024 : 0; $diskFree = (int)disk_free_space('C:') / 1024 / 1024; $diskUmari = $diskTotal - $diskFree; if ($diskTotal > 0 && ($diskFree / $diskTotal < 0.1)) { $disk_over90p = true; } else { $disk_over90p = false; } $loadAve = null; } else { $disk = true; $totalRaw = disk_total_space('/'); $diskTotal = ($totalRaw > 0) ? (int)$totalRaw / 1024 / 1024 : 0; $diskFree = (int)disk_free_space('/') / 1024 / 1024; $diskUmari = $diskTotal - $diskFree; if ($diskTotal > 0 && ($diskFree / $diskTotal < 0.1)) { $disk_over90p = true; } else { $disk_over90p = false; } if(function_exists("sys_getloadavg")){ $loadAve = sys_getloadavg()[0]; } else { $loadAve = null; } } } else { $disk = false; $diskFree = 5000; $diskUmari = 5000; $diskTotal = 10000; $disk_over90p = false; if(function_exists("sys_getloadavg")){ $loadAve = sys_getloadavg()[0]; }else{ $loadAve = null; } } require('../logout/logout.php'); ?> サーバー概要 - <?php echo safetext($serversettings["serverinfo"]["server_name"]);?>

サーバー概要

">
">
">

サーバー名


サーバー紹介メッセージ


サーバー管理者の名前


サーバーへのお問い合わせ用メールアドレス


統計情報

ユーザー数

投稿数

カスタム絵文字数

Botアカウント数

アクティブユーザー数
(過去5分間)

離席中のユーザー数
(過去5分~15分間)


ディスク空き容量

90%以上が使用済みです。
早急に容量拡張などの対応を考えてください!

ディスク空き容量には余裕があります。

0) ? round($usedGB / $totalGB * 100, 1) : 0; ?>

使用済み : GB
空き容量 : GB

空き容量の取得ができませんでした。


ロードアベレージ

ロードアベレージはCPUのコア数と照らし合わせて活用してください。
"ロードアベレージ/CPUコア数"で計算をした時に1.0を超えると処理が重くなっています。
※Windows環境ではロードアベレージの取得はできません。

ロードアベレージの取得ができませんでした。

過去1分間のロードアベレージ :


ユーザーのフォロー情報の移行進捗

uwuzu v1.6.5にて行われたユーザーのフォロー情報の保持方法の改良における進捗の表示です。

進捗: % ( / )


自動停止ロードアベレージ上限

uwuzuが自動停止するロードアベレージの上限です。
"-1"で無制限です。


ユーズのレートリミット

1分間にユーズできる上限です。
"-1"で無制限です。

ueuse/min


データベース

データベースの容量情報です。
"; echo ""; echo ""; echo ""; echo ""; } } ?>
".$value['Table']."".$value['Size']." MB".$value['Rows']." Records