Bom, o que vou postar aqui não é nenhuma novidade pra quem usa PC com MIkrotik.
Contudo, acredito haver unanimidade em se tratando de tarefas repetitivas e que ocasionam paradas.
Esse script roda em duas etapas:
Na primeira ele verifica se o cache ja passou do valor estipulado no script, caso passe ele executa outro script.
caso não passe ele simplesmente loga que não precisa ser limpo.
Coloque pra rodar nas madrugadas, tipo 4:30 que é um bom horario, visto que cache pra limpar pode
levar até 1:30hs (a cada 10GB) a depender do tamanho e velocidade do HD utilizado.
Vamos la:
script 1:
nome = limpacache1
/ip proxy monitor once do={:if (cache-used >= 4000000) do={/system script run limpacache2} else={:log info "CACHE NAO PRECISA SER LIMPO!"}}
script 2:
nome: limpacache2
:log info "Desativando redirecionamento no Firewall..."
/ip firewall nat disable [find comment="PROXY"]
:log info "Parando web-proxy 'Tempo Estimado: 2 minutos'......"
/ip proxy set enabled=no
:delay 2m
:log info "Limpando web-proxy 'Tempo Estimado: 20 minutos'..."
/ip proxy clear-cache
:delay 20m
:log info "Ativando web-proxy..."
/ip proxy set enabled=yes
:log info "Ativando redirecionamento no Firewall..."
/ip firewall nat enable [find comment="PROXY"]
:log info "Limpeza do WEB-PROXY TERMINADA"
Obs: A linha em NAT que faz redirecionamento pro seu cache deve ter o nome "PROXY", aquela regra
que redireciona a porta 80 pro seu 3128 (geralmente usam essa, mas pode ser qualquer uma é logico), caso contrario
quando o script rodar, seus clientes iram ficar sem navegação.
Um forte abraço a todos.