C實現的 CENTOS寬頻監控小程式

2021-08-01 14:45:56 字數 2397 閱讀 3796

/*

* 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...