XE

XE 하드용량 및 DB용량 트래픽양 표시하기

by 보석 posted Apr 04, 2012
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 게시글 수정 내역 댓글로 가기 인쇄


 stts_ss.png

오래전부터 제 홈페이지 카운터 아래부분에 계정의 정보를 출력하도록 했었는데요... (좀 있어 보이려고... ^^)

제로보드4 시절에는 관련 팁이 많아서 그냥 소스 퍼가서 사용하면 됐는데 XE로 오면서 관련 팁이 안보이더라구요...

그래서 여기 저기서 소스 긁어다가 붙여보니 잘 작동 하더군요....

그런데 여긴 [XE 팁 공유]란인데 이게 게시판 용도에 맞는지 모르겠습니다.

예전에는 PHP나 프로그램밍 언어를 공부하는 게시판이 따로 있었는데 지금은 없네요...ㅜ,.ㅜ

제가 사용한 소스는 아래와 같습니다.

<?php
// 계정 사용량 출력 ////////////////////////////////////////////////////////////////
function size($size) {
 $unit = Array(" Byte"," KB"," MB"," GB");  
  if(!$size) 
   return "0".$unit[0];
  if($size < 1024) // 바이트
   return $size.$unit[0];
  if($size > 1024 && $size < 1024*1024) // 킬로바이트
   return sprintf("%0.1f ".$unit[1], $size / 1024);
  if($size > 1024*1024 && $size < 1024*1024*1024) // 메가바이트
   return sprintf("%0.1f ".$unit[2], $size / (1024*1024));
  if($size > 1024*1024*1000 && $size < 1024*1024*1024*1024) // 기가바이트
   return sprintf("%0.1f ".$unit[3], $size / (1024*1024*1000));
 }
$select_dir = @chdir("디렉토리경로");
$du = `du -sb`;
$du = str_replace(".","", $du);
$du = trim($du);
$du = size($du);
// 계정 사용량 출력 ////////////////////////////////////////////////////////////////
// Mysql 사용량 출력 (수정하세요) ////////////////////////////////////////////////////////////////
$host="localhost";       // 호스트명.
$user_name="";     // 자신의 계정 아이디를 적으시면 됩니다.
$db_name="";       // 자신의 MySQL DB 아이디를 적으세요.
$db_password=""; // 자신의 DB의 패스워드 입니다.
// 데이터 베이스 접속
$dbcon = mysql_connect($host,$user_name,$db_password) or message(mysql_error()); 
mysql_select_db($db_name,$dbcon) or message(mysql_error());
// 전체 테이블 현황을 불러오는 쿼리문
$result = mysql_query("SHOW TABLE STATUS", $dbcon);
$total_size = 0;
$num = 1;
// 데이터베이스 크기구하는 반복문
while($dbData=mysql_fetch_array($result)){
 $total_size += $dbData[Data_length]+$dbData[Index_length];
        $num++;
 }
// Mysql 사용량 출력 ////////////////////////////////////////////////////////////////
// 닫기
mysql_close($dbcon);
// 현재 트래픽 출력 ////////////////////////////////////////////////////////////////
ini_set("allow_url_fopen","1");
$throttle = "자신의 홈페이지주소/throttle-me/";
$file = file($throttle);
$traffic = sprintf("%0.2fMB",strip_tags($file[43]) / 1024); // 44번 라인을 읽어서 태그를 없애고 MB단위로...배열은 0부터 44-1 = 43
// 현재 트래픽 출력 ////////////////////////////////////////////////////////////////
echo "<p style='background-color: white; border: 1px solid #eee; padding: 10px 0 10px 14px; margin-top: 5px; line-height: 17px; border: 1px solid #eee; text-align: left; font-size: 8pt; color: #777;'>";
echo "하드사용량 : ";
echo $du;
echo "<br />";
echo "디비사용량 : ";
printf("%0.2f MB",$total_size / (1024*1024));
echo "<br />";
echo "현재트래픽 : ";
echo $traffic;
echo "</p>";
?>

위의 소스를 stasus.html 로 저장하시고, 적용하고자 하는 곳에 불러오면 됩니다.

저는 layout.html 에 인클루드로 불러왔습니다.

 

1.<!--#include("./stasus.html")-->

위에서 계정 정보를 입력해야 하고, 트래픽 출력을 위해 홈페이지 주소를 입력해야 합니다.

주의하실 점은 트래픽 출력을 위해서는 계정에 throttle-me 이 설치되어 있어야 합니다.

throttle-me 이 설치되어 있지 않다면 관련 부분을 주석처리 하거나 삭제하셔야 겠죠?

참고로 비누넷 사용자들은 그냥 사용하시면 됩니다.



Articles

1 2 3 4 5 6