Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - Перезапуск службы, если web-сервер, если не откликается

Ответить
Настройки темы
PowerShell - Перезапуск службы, если web-сервер, если не откликается

Пользователь


Сообщения: 105
Благодарности: 1

Профиль | Отправить PM | Цитировать


Здравствуйте. Помогите пожалуйста.

Есть веб сервер по адресу http://127.0.0.1:0000/
Нужен скрипт, который бы циклически проверял доступность сервера по указанному адресу и в случае, если он не доступен, то проверка доступности сервера останавливалась, перезапускалась служба webserver, и потом проверка снова возобновлялась.



Доступность сервера проверял командой
Код: Выделить весь код
Invoke-WebRequest -Uri 127.0.0.1:8000
Перезапуск службы осуществлял командами:
Код: Выделить весь код
Stop-Service -Name webserver
Start-Service -Name webserver
А как это все связать в один отлаженный процесс - загадка.

Отправлено: 12:25, 08-10-2021

 

Аватара для DJ Mogarych

fascinating rhythm


Moderator


Сообщения: 6626
Благодарности: 1528

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
if ((Test-NetConnection 127.0.0.1 -Port 8000).TcpTestSucceeded -ne $true) {Restart-Service webserver}
Цикличность задаётся в планировщике.

-------
Powershell 7.x | Powershell 5.1 | ffmpeg (docs)

Это сообщение посчитали полезным следующие участники:

Отправлено: 14:01, 08-10-2021 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


Сообщения: 105
Благодарности: 1

Профиль | Отправить PM | Цитировать


DJ Mogarych, спасибо! DJ Mogarych, Скажите пожалуйста, как будет выглядеть код, если нужно еще выполнить это действие:

Код: Выделить весь код
start http://127.0.0.1:8000

Отправлено: 07:42, 09-10-2021 | #3


Пользователь


Сообщения: 105
Благодарности: 1

Профиль | Отправить PM | Цитировать


DJ Mogarych, скажите пожалуйста, как правильно написать код, чтобы вывод можно было логировать в файл?

Код: Выделить весь код
write-host "старт скрипта" | Out-file "[b]$env:userprofile\Desktop\webserver-ps-log.txt" -Append
get-date | Out-file "[b]$env:userprofile\Desktop\webserver-ps-log.txt" -Append
if ((Test-NetConnection 127.0.0.1 -Port 8000).TcpTestSucceeded -ne $true) {Restart-Service webserver} | Out-file "[b]$env:userprofile\Desktop\webserver-ps-log.txt" -Append
get-date | Out-file "[b]$env:userprofile\Desktop\webserver-ps-log.txt" -Append
start http://127.0.0.1:8000 | Out-file "$env:userprofile\Desktop\webserver-ps-log.txt" -Append
get-date | Out-file "[b]$env:userprofile\Desktop\webserver-ps-log.txt" -Append
Цитата epoddubniy:
if ((Test-NetConnection 127.0.0.1 -Port 8000).TcpTestSucceeded -ne $true) {Restart-Service webserver} | Out-file "[b]$env:userprofile\Desktop\webserver-ps-log.txt" -Append »
в этом куске ругается на

Отправлено: 08:10, 09-10-2021 | #4


Аватара для DJ Mogarych

fascinating rhythm


Moderator


Сообщения: 6626
Благодарности: 1528

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
{Restart-Service webserver; start http://127.0.0.1:8000}
# или
{
Restart-Service webserver
start http://127.0.0.1:8000
}
Код: Выделить весь код
if (($test = Test-NetConnection ya.ru -Port 443).TcpTestSucceeded -ne $true) {
(get-date).ToString() + "`t" + $test.TcpTestSucceeded >> "$env:userprofile\Desktop\webserver-ps-log.txt"
Restart-Service webserver
}

-------
Powershell 7.x | Powershell 5.1 | ffmpeg (docs)

Это сообщение посчитали полезным следующие участники:

Отправлено: 09:28, 09-10-2021 | #5



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - Перезапуск службы, если web-сервер, если не откликается

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Если файл существует, то - ___, если не существует, то___ epoddubniy Скриптовые языки администрирования Windows 12 29-03-2021 14:55
CMD/BAT - Скрипт на проверку процесса (завершение если найден, запуск если не найден) Alert6 Скриптовые языки администрирования Windows 6 03-08-2018 00:04
Любой язык - WinSCP скрипт реконнекта если сервер не доступен vladimir.polevoy.3@fb Скриптовые языки администрирования Windows 1 30-03-2014 12:15
Система - Программа запускающая скрипт если сервер не доступен zi0n Программное обеспечение Windows 1 14-11-2013 11:53
Windows XP SP2 не стартуют службы, даже если у них стоит режим авто mrcnn Хочу все знать 9 19-10-2007 21:15




 
Переход