Для обнаружения ситуаций, когда соединение с сервером нормальное, но с сервера не поступают данные ВООБЩЕ написал скрипт.
Скрипт пишет данные о времени последней связи с сервером и фиксирует задержу в лог файле.
скрипт в стадии тестирования.
Желающие присоединяйтесь.
Скрипт пишет данные о времени последней связи с сервером и фиксирует задержу в лог файле.
скрипт в стадии тестирования.
Желающие присоединяйтесь.
| Код |
|---|
function HMS(T)
local hms=0; for s in T:gmatch("[^:]+") do hms=60*hms+tonumber(s) end
return hms;
end
MaxTime=30
function main()
while run do
TS=getInfoParam("SERVERTIME")-- Время сервера
TW=getInfoParam("LASTRECORDTIME")-- Время последней записи
if TS and TW then
TL=getInfoParam("LASTPINGTIME") --Время последней проверки связи
if TL_OLD and TL~=TL_OLD then
local str=os.date()
if D>MaxTime then str=str..",задержка(сек)="..D; end
Log:seek("set",begin);
Log:write(str.."\n"); Log:flush();
if D>MaxTime then begin=Log:seek(); end
end
TS_HMS=HMS(TS); D=math.abs(HMS(TW)-TS_HMS)
end
TL_OLD=TL;
sleep(200);
end
end
function OnInit(ph)
ph=ph:sub(1,ph:len()-3).."log";
Log = io.open(ph, "w");Log:close(); Log = io.open(ph, "r+");
begin=Log:seek();
D=0;
run=true
end
|