fixed some logrotate issues~

main
Theenoro 2022-08-05 10:32:24 +02:00
parent fc33eccb2b
commit 47b320f196
1 changed files with 21 additions and 26 deletions

View File

@ -1,59 +1,54 @@
@echo off
set check_host=%1
set check_hostname=%2
set file_path=.\log
set filename=%file_path%/%check_hostname%.log
REM set the max filesize
set maxbytesize=1024000
REM set the max filesize (512kb)
set maxbytesize=512000
:loop
REM get date time
set ldt=%DATE:~6,4%-%DATE:~3,2%-%DATE:~0,2% %TIME:~0,2%:%TIME:~3,2%:%TIME:~6,2%
for %%A in (%filename%) do set size=%%~zA
echo %size% %maxbytesize%
if %size% gtr %maxbytesize% call:rotate
ping -w 1 -n 1 %check_host% | find "TTL=" >nul
if errorlevel 1 (
echo %ldt% - ping failed %check_hostname% - %check_host%
ECHO %ldt% - ping failed %check_hostname% - %check_host% >>%filename%
) else (
echo %ldt% - ping %check_hostname% - %check_host%
REM check filesize, if over maxbytesize run rotate function
if exist %filename% (
for %%A in (%filename%) do set size=%%~zA
if %size% gtr %maxbytesize% call:rotate
)
REM 1 ping with one sec timeout
ping -w 1 -n 1 %check_host% | find "TTL=" >nul
if errorlevel 1 (
REM ping failed - log into file
echo %ldt% - ping failed %check_hostname% - %check_host%
echo %ldt% - ping failed %check_hostname% - %check_host% >>%filename%
) else (
REM ping succeed
echo %ldt% - ping %check_hostname% - %check_host%
)
REM wait 1 sec for next ping
@timeout /t 1 /nobreak >nul
goto loop
REM rotate
REM rotate logs
REM move logs if they exist
:rotate
if exist %file_path%\old_logs\%check_hostname%.log.5 (
rem file exists
)
REM move file if exist
if exist %file_path%\old_logs\%check_hostname%.log.4 (
rem file exists
move %file_path%\old_logs\%check_hostname%.log.4 %file_path%\old_logs\%check_hostname%.log.5
)
if exist %file_path%\old_logs\%check_hostname%.log.3 (
rem file exists
move %file_path%\old_logs\%check_hostname%.log.3 %file_path%\old_logs\%check_hostname%.log.4
)
if exist %file_path%\old_logs\%check_hostname%.log.2 (
rem file exists
move %file_path%\old_logs\%check_hostname%.log.2 %file_path%\old_logs\%check_hostname%.log.3
)
if exist %file_path%\old_logs\%check_hostname%.log.1 (
rem file exists
move %file_path%\old_logs\%check_hostname%.log.1 %file_path%\old_logs\%check_hostname%.log.2
)
move %file_path%\%check_hostname%.log %file_path%\old_logs\%check_hostname%.log.1