Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Creadit to om Agus R untuk script nya..
- /system scheduler add interval="00:00:00" name="RXByte.log" on-event="1" start-time="00:00:00"
- /system scheduler add interval="00:00:00" name="RXByteCur.log" on-event="1" start-time="00:00:00"
- /system scheduler add interval="00:00:00" name="TXByte.log" on-event="1" start-time="00:00:00"
- /system scheduler add interval="00:00:00" name="TXByteCur.log" on-event="1" start-time="00:00:00"
- /system scheduler add interval="00:01:00" name="RESET-RXTX" start-time=startup
- /system scheduler add interval="00:0:030" name="BANDWIDTH-MONITORING" start-time=startup
- Copy Paste Script reset bulanan ini dalam file Scheduler RESET-RXTX
- ################################################################
- # Script by Agus Ramadhani
- # fb.com/buananet.pangkalanbun
- # http://www.o-om.com
- # SCRIPT MIKROTIK BANDWIDTH MONITORING
- # Version 1.0
- ################################################################
- # Fungsi untuk reset Bulanan Setiap tanggal 1
- ################################################################
- :local varDate;
- :local varDay;
- :set varDate [/system clock get date];
- :set varDay [:pick $varDate 4 6];
- :if ($varDay = "01") do={
- # jika har ini tanggal 1 reset RXTX ke nilai awal
- /system scheduler set RXByte.log comment="1" on-event="1"
- /system scheduler set RXByteCur.log comment="1" on-event="1"
- /system scheduler set TXByte.log comment="1" on-event=$RXByteCount
- /system scheduler set TXByteCur.log comment="1" on-event="1"
- /system scheduler disable [/system scheduler find name="RESET-RXTX"]
- }
- ################################################################
- Copy Paste Script Monitoring ini dalam file Scheduler BANDWIDTH-MONITORING
- jangan lupa ganti nama ether dalam script sesuai interface masing2 yang ingin dipantau
- :local INTMon WAN-WARNET;
- jangan Lupa ganti total quota yang diberikan ISP masing2 dicontoh adalah 500GB
- :local TOTQuota 500;
- ################################################################
- # Script by Agus Ramadhani
- # fb.com/buananet.pangkalanbun
- # http://www.o-om.com
- # SCRIPT MIKROTIK BANDWIDTH MONITORING
- # Version 1.0
- ################################################################
- :local INTMon WAN-WARNET;
- # silahkan ganti dengan interface (ether) yang ingin dipantau
- :local TOTQuota 500;
- # Set total quota dalam GB misalkan ISP hanya memberi hanya 500GB
- ################################################################
- :local RXByteCur [/interface get $INTMon rx-byte];
- # Mengambil nilai RX-Byte saat ini pada interface terpilih
- ################################################################
- :local RXByteCount [/system scheduler get RXByteCur.log on-event];
- # Mengambil nilai RX-byte dalam file log RXByteCur
- ################################################################
- :local RXByte [/system scheduler get RXByte.log on-event];
- # Mengambil nilai RX-Byte sebelumnya dalam file log RXByte
- ################################################################
- :local TXByteCur [/interface get $INTMon tx-byte];
- # Mengambil nilai TX-Byte saat ini pada interface terpilih
- ################################################################
- :local TXByteCount [/system scheduler get TXByteCur.log on-event];
- # Mengambil nilai TX-Byte saat ini dalam file log TXByteCur
- ################################################################
- :local TXByte [/system scheduler get TXByte.log on-event];
- # Mengambil nilai TX-Byte saat ini dalam file Log TXByte
- ################################################################
- :local ifReboot 0;
- # kita perlu mengetahui apakah router reboot dengan memberi flag 0
- ################################################################
- :if ($RXByteCur>=$RXByteCount) do={} else={:set $ifReboot ($ifReboot+1);}
- :if ($TXByteCur>=$TXByteCount) do={} else={:set $ifReboot ($ifReboot+1);}
- # Tandai jika nilai RXTX-Byte saat ini lebih besar dari RXTX-Byte pada log
- ################################################################
- :if ($ifReboot>=1) do={
- # Cek Jika Router Rebbot
- ################################################################
- :set $RXByte ($RXByte+$RXByteCount);
- /system scheduler set RXByte.log comment=$RXByte on-event=$RXByte
- # jika komputer reboot jumlahkan total RX-Byte
- ################################################################
- :set $TXByte ($TXByte+$TXByteCount);
- /system scheduler set TXByte.log comment=$TXByte on-event=$TXByte
- } else={
- # jika komputer reboot jumlahkan total TX-Byte
- ################################################################
- }
- :set RXByteCount ($RXByteCur);
- /system scheduler set RXByteCur.log comment=$RXByteCount on-event=$RXByteCount
- # Perbaharui nilai RX-Byte saat ini pada file log RXByteCur
- ################################################################
- :set TXByteCount ($TXByteCur);
- /system scheduler set TXByteCur.log comment=$TXByteCount on-event=$TXByteCount
- # Perbaharui nilai TX-Byte saat ini pada file log TXByteCur
- ################################################################
- :local RXTot ($RXByte+$RXByteCur);
- :local RXMB ($RXTot / 1024 / 1024);
- :local RXGB ($RXTot / 1024 / 1024 / 1024);
- # kalkulasi nilai RX-BYTE dalam MB dan GB
- ################################################################
- :local TXTot ($TXByte+$TXByteCur);
- :local TXMB ($TXTot / 1024 / 1024);
- :local TXGB ($TXTot / 1024 / 1024 / 1024);
- # kalkulasi nilai TX-BYTE dalam MB dan GB
- ################################################################
- :local RXTX ($RXTot+$TXTot);
- :local RXTXMB ($RXMB+$TXMB);
- :local RXTXGB ($RXGB+$TXGB);
- # Total kalkulasi nilai Total RXTX
- ################################################################
- :log warning "###############################################";
- :log warning "BANDWIDTH MONITORING [ Router: $[/system identity get name] ]";
- :log warning "###############################################";
- :log warning "Interface Monitoring For Ether: $INTMon";
- /interface monitor-traffic [/interface find name=$INTMon] once do={
- :local tx (tx-bits-per-second / 1024);
- :local rx (rx-bits-per-second / 1024);
- :log warning "Live Monitor RX = $rx kbps TX = $tx kbps";
- }
- # hanya untuk menampilkan rxtx saat ini
- ###############################################################
- :log warning "Total RX = $RXGB GB / $RXMB MB / $RXTot Bytes";
- :log warning "Total TX = $TXGB GB / $TXMB MB / $TXTot Bytes";
- :log warning "Total (RX+TX) = $RXTXGB GB / $RXTXMB MB / $RXTX Bytes";
- :local percent ($RXTXGB*100 / $TOTQuota);
- :log error "Used Quota on This Month = $RXTXGB GB = $percent% from $TOTQuota GB";
- :log warning "###############################################";
- # Tampilkan Info pada LOG Mikrotik
- ################################################################
- :local varDate;
- :local varDay;
- :set varDate [/system clock get date];
- :set varDay [:pick $varDate 4 6];
- :if ($varDay = "29") do={
- # jika har ini tanggal 29 aktfikan RESET-RXTX
- /system scheduler enable [/system scheduler find name="RESET-RXTX"];
- }
- ################################################################
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement