/*
* centos伺服器寬頻監控程式
* * 使用方法:
* 首先在新建/etc/rate.d/目錄 並且賦予0777許可權
* 執行本程式 會在上述提到的目錄中 建立 hour.json 和 minute.json 檔案
* 前者記錄 當天24小時 的寬頻流速 後者記錄 30分鐘以內寬頻流速(均為平均值)
* rx是下行 tx是上行 對應的資料 *8/1024/1024 得到即為 mbps/s
* 資料以json的格式儲存
* 程式有諸多不完善之處 還望大蝦自己研究 修改**/
#include #include #include #include #include #define sleep_time 1
char* get(char* str);
char* getstr();
void getinfo(char* line);
void start();
void start_service();
struct dev;
struct rate_log;
char * ptmp;
struct dev eth0;
struct rate_log minute_bw[30];
struct rate_log hour_bw[24];
long last_tx = 0;
long last_rx = 0;
int main()
printf("\n流控監控服務 [已啟動]\npid: %d\n",fpid);
return 0;
}void start_service()
/*初始化 小時寬頻 監控資料
*/ for(j=0;j<24;j++)
time(&timep);
p = localtime(&timep);
last_minute = p->tm_min;
last_day = p->tm_mday;
last_hour = p->tm_hour;
start();
last_rx = eth0.info[0];
last_tx = eth0.info[8];
int k = 0;//一共逝去了多少分鐘
//system("clear");
while(1)
minute_bw[29].rx = rx_bw;
minute_bw[29].tx = tx_bw;
minute_bw[29].minute = minute;
minute_bw[29].hour = hour;
if(fork() == 0)\n",minute_bw[i].hour,minute_bw[i].minute,minute_bw[i].rx,minute_bw[i].tx);
}else,\n",minute_bw[i].hour,minute_bw[i].minute,minute_bw[i].rx,minute_bw[i].tx);
}fputs(buffer,fp);
}fputs("}",fp);
fclose(fp);
exit(getpid());
}k++;
} if(hour != last_hour)\n",hour_bw[i].hour,hour_bw[i].rx,hour_bw[i].tx);
}else,\n",hour_bw[i].hour,hour_bw[i].rx,hour_bw[i].tx);
}fputs(buffer,fp);
}fputs("}",fp);
fclose(fp);
exit(getpid());
}}
last_day = day;
last_minute = minute;
last_hour = hour;
start();
sleep(sleep_time);
}}//解析/proc/net/dev檔案 並將流量資料格式化 這裡的識別邏輯有待優化
void start()
//strstr
} fclose(fp);
}//解析資訊並放置到結構體當中
void getinfo(char* line) }
char* get(char* str)
char* getstr()
while(*ptmp != '\0')
ptmp++; }
ptmp++;
return pstr;
}
程式非常小巧,直接gcc 編譯即可。使用方法請看頭部注釋。
我的郵箱 [email protected]也歡迎一起交流。
CentOS安裝lm sensors監控CPU溫度
lm sensors是一款linux的硬體監控的軟體,可以幫助我們來監控主機板,cpu的工作電壓,風扇轉速 溫度等資料。輸入下面的命令yum安裝 yum y install lm sensorssensors 檢視cpu溫度 watch sensors 每隔一秒顯示cpu溫度 watch n 1 d...
C 實現遠端螢幕監控
在客戶端解取到螢幕之後,可以儲存為,但是要實現遠端監控的話,要把他儲存到流裡發給服務端,再顯示在服務端的picturebox裡,請問這中間怎麼傳輸,小弟在此先謝謝各位了,如下 我的email thify qq.com using system using system.collections.gen...
C 實現簡單螢幕監控的方法
這是一段c 編寫的螢幕監控 可以自動對螢幕進行截圖,軟體自身隱藏 using system using system.collections.generic using system.componentmodel using system.data using system.drawing usin...