Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Silahkan paste script ini di terminal mikrotik
- /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
- ################################################################
- # 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;
- ################################################################
- :local INTMon WAN-WARNET;
- # silahkan ganti dengan interface (ether) yang ingin dipantau
- :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
- ################################################################
- Pertama tambah satu scheduler dengan nama VIEW-LOG-NOTE
- /system scheduler add interval="01:00:000" name="VIEW-LOG-NOTE" start-time=startup
- Kemudian copy-paste Script dibawah ini kedalam file scheduler VIEW-LOG-NOTE
- ################################################################
- :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 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 TXByte [/system scheduler get TXByte.log on-event];
- # Mengambil nilai TX-Byte saat ini dalam file Log TXByte
- ################################################################
- :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
- ################################################################
- :local percent ($RXTXGB*100 / $TOTQuota);
- :local logcontenttemp ""
- :local logcontent ""
- :set logcontenttemp ""
- :set logcontent ("$logcontent" ."$logcontenttemp" ."\n")
- :set logcontenttemp "#######################################################"
- :set logcontent ("$logcontent" ."$logcontenttemp" ."\n")
- :set logcontenttemp "BANDWIDTH MONITORING [ Router Identity: $[/system identity get name] ]"
- :set logcontent ("$logcontent" ."$logcontenttemp" ."\n")
- :set logcontenttemp "#######################################################"
- :set logcontent ("$logcontent" ."$logcontenttemp" ."\n")
- :set logcontenttemp "Interface Monitoring For: $INTMon"
- :set logcontent ("$logcontent" ."$logcontenttemp" ."\n")
- :set logcontenttemp "Total RX = $RXGB GB / $RXMB MB / $RXTot Bytes"
- :set logcontent ("$logcontent" ."$logcontenttemp" ."\n")
- :set logcontenttemp "Total TX = $TXGB GB / $TXMB MB / $TXTot Bytes"
- :set logcontent ("$logcontent" ."$logcontenttemp" ."\n")
- :set logcontenttemp "Total (RX+TX) = $RXTXGB GB / $RXTXMB MB / $RXTX Bytes"
- :set logcontent ("$logcontent" ."$logcontenttemp" ."\n")
- :set logcontenttemp "Used Quota on This Month $RXTXGB GB = $percent% from $TOTQuota GB"
- :set logcontent ("$logcontent" ."$logcontenttemp" ."\n")
- :set logcontenttemp "#######################################################"
- :set logcontent ("$logcontent" ."$logcontenttemp" ."\n")
- :if ($RXTXGB >= $TOTQuota) do={
- :set logcontenttemp "Your Quota is OVERLOAD :("
- :set logcontent ("$logcontent" ."$logcontenttemp" ."\n")
- } else={
- :set logcontenttemp "Your Quota is SAVE :)"
- :set logcontent ("$logcontent" ."$logcontenttemp" ."\n")
- }
- :set logcontenttemp ""
- :set logcontent ("$logcontent" ."$logcontenttemp" ."\n")
- /system note set note=$logcontent
- # 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