#on_wait #on_log program ControlServers; var I : int; // службы на сервере телеобработки Main_TO : array 4 of string = ( "Телеобработка", "Монитор взаимодействия с Этран", "Модуль взаимодействия с АС ЭТД", "StatClient" ); // службы на основном сервере приложений Main_SP : array 4 of string = ( "Планировщик СП основной", "Отчетность АСУСТ (основная)", "Сервер подсистемы КСАРМ ВЧД", "StatClient(основной)" ); // службы на резервном сервере приложений Res_SP : array 4 of string = ( "Планировщик СП резервный"; "Отчетность АСУСТ (резервная)"; "Сервер подсистемы КСАРМ ВЧД"; "StatClient(резервный)"; ); declare @CUMR04_TO : server Title = "Cервер телеобработки"; Host = "1.2.2.15"; User = "adm"; Password = "pass"; IntervalWait = 60; WaitReboot = 360; end; declare @CUMR04A : server Title = "Основной сервер приложений"; Host = "1.2.2.11"; User = "adm"; Password = "pass"; IntervalWait = 60; WaitReboot = 360; end; declare @CUMR05A : server Title = "Резервный сервер приложений"; Host = "1.2.2.21"; User = "adm"; Password = "pass"; IntervalWait = 60; WaitReboot = 360; end; procedure OutMess (Mess : string; NameService : string); begin if not(Mess = "") then writeln("Ошибка: ", Mess); else writeln("Cлужба: " + "'" + NameService + "'" + " - запущена!"); endif; end; procedure ServiceControl (var @Serv : server; NameService : string); begin @Serv->ControlService(NameService); OutMess(@Serv->Get_MessErr(), NameService); end; begin writeln("========================================="); writeln("Контроль состояния служб на серверах ЦУМР"); writeln("========================================="); // подключение к серверу телеобработки writeln("Подключение к серверу телеобработки"); if not @CUMR04_TO->Connect() then writeln("Ошибка: ", @CUMR04_TO->Get_MessErr()); exit; endif; // подключение к основному серверу приложений writeln("Подключение к основному серверу приложений"); if not @CUMR04A->Connect() then writeln("Ошибка: ", @CUMR04A->Get_MessErr()); exit; endif; // подключение к резервному серверу приложений writeln("Подключение к резервному серверу приложений"); if not @CUMR05A->Connect() then writeln("Ошибка: ", @CUMR05A->Get_MessErr()); exit; endif; writeln("-----------------------------------------"); writeln(@CUMR04_TO.Title + " (" + @CUMR04_TO.Host + ")"); // проверка запуска служб на сервере телеобработки for I := 0 to Len(Main_TO) - 1 ServiceControl(@CUMR04_TO, Main_TO[I]); endfor; writeln("-----------------------------------------"); writeln(@CUMR04A.Title + " (" + @CUMR04A.Host + ")"); // проверка запуска служб на основном сервере приложений for I := 0 to Len(Main_SP) - 1 ServiceControl(@CUMR04A, Main_SP[I]); endfor; writeln("-----------------------------------------"); writeln(@CUMR05A.Title + " (" + @CUMR05A.Host + ")"); // проверка запуска служб резервном сервере приложений for I := 0 to Len(Res_SP) - 1 ServiceControl(@CUMR05A, Res_SP[I]); endfor; writeln("-----------------------------------------"); // запрос на завершение работы readln(); end.