Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?

Официальный форум Simple-Scada.

Автор Тема: Пуск остановка рестарт сервера с командной строки  (Прочитано 9394 раз)

greenmore

  • Новичок
  • *
  • Сообщений: 22
    • Просмотр профиля
Какие опции имеет команда server.exe в командной строке.
Можно ли запустить/остановить/перезапустить сервер из нее.
Имеется ли возможность запуска сервера как службы.

Нужно перезапускать сервер на удаленной машине, какие предложения.

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3000
    • Просмотр профиля
    • Simple-Scada
Здравствуйте.

Процесс сервера "Server.exe" не имеет каких-то специальных функций для управления через командную строку. Можно попробовать организовать перезапуск приложения используя планировщик Windows, но завершение работы может быть некорректным. Также в данный момент нельзя запустить сервер как службу.

Цитировать
Нужно перезапускать сервер на удаленной машине, какие предложения.
А для чего нужно выполнять перезапуск? К какому результату он должен привести?

greenmore

  • Новичок
  • *
  • Сообщений: 22
    • Просмотр профиля
Сервер и клиенты удаленные.
После редактирования страниц, нужно перезапускать клиенты для того, что бы изменения были видни.
Доступ к клиентам может быть ограничен, тогда лучше перезапустить сервер к которому RDP имеется...или там по другому можно решить проблему.



Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3000
    • Просмотр профиля
    • Simple-Scada
greenmore, а почему не подходит вариант просто перезапустить проект через сервер скады, нажав на кнопку запуска/останова проекта в правом нижнем углу (описание кнопки доступно по ссылке)? После перезапуска проекта все клиенты получат последнюю версию проекта и отобразят её.

greenmore

  • Новичок
  • *
  • Сообщений: 22
    • Просмотр профиля
Вижу что работает.
У меня просто вызывает отрицательную реакцию обращение к экрану любого приложения Симпл Скада в режиме RDP.

Simple_Scada

  • Администратор
  • *****
  • Сообщений: 1179
    • Просмотр профиля
Если на ПК-сервере запущен только сервер Simple-Scada(Server.exe), то подключение через RDP должно работать нормально. Если на ПК-сервере запущен редактор или клиент, то подключение через  RDP установить не получится, так как при этом Windows меняет глубину цвета на 24 бита(из-за этого может возникать ошибка «Dekstop doesn’t support 32-bit color mode» или «Can’t create d3d device»). Рекомендуем для удаленного подключения использовать TeamViewer — через него все работает без проблем.

greenmore

  • Новичок
  • *
  • Сообщений: 22
    • Просмотр профиля

TeamViewer платная, однако. К тому, большинство заказчиков не очень толерантно относится к таким произведениям.

Eugene_

  • Пользователь
  • **
  • Сообщений: 75
    • Просмотр профиля
Вопрос по перезапуску сервиса, в последних версия, с момента сообщения выше - SCADA сервер может работать как служба. Есть необходимость перезапуска 1 раз в неделю проекта в SCADA планировщиком Windows, а очевидно перезапустить только проект, не трогая службу, таким образом не получится.

Вопрос такой: если при запущенном проекте на сервере перезапустить не сам проект (из оснастки SCADA), а из оснастки Windows перезапустить службу - проект будет корректно завершен ? 

Для теста сделан такой bat файл и подключен к задаче в планировщике

@echo off
net stop "Simple-Scada Server Service"
ping -n 60 localhost>Nul
net start "Simple-Scada Server Service"
ping -n 301 localhost>Nul
SetLocal EnableExtensions
Set ProcessName=Simple-Scada Server Service
TaskList /FI "ImageName EQ %ProcessName%" | Find /I "%ProcessName%"
If %ErrorLevel% NEQ 0 net start "Simple-Scada Server Service"
exit


Eugene_

  • Пользователь
  • **
  • Сообщений: 75
    • Просмотр профиля
greenmore, а почему не подходит вариант просто перезапустить проект через сервер скады, нажав на кнопку запуска/останова проекта в правом нижнем углу (описание кнопки доступно по ссылке)? После перезапуска проекта все клиенты получат последнюю версию проекта и отобразят её.
В раздел пожелания - а можно добавить  поддержку ключей в командной строке "перезапуск  текущего проекта" или что то подобное ? в будущих релизах

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3000
    • Просмотр профиля
    • Simple-Scada
Цитировать
если при запущенном проекте на сервере перезапустить не сам проект (из оснастки SCADA), а из оснастки Windows перезапустить службу - проект будет корректно завершен ?
Да, проект должен останавливаться корректно, как при выключении службы вручную.

Eugene_

  • Пользователь
  • **
  • Сообщений: 75
    • Просмотр профиля
Вопрос в этой теме как наиболее близкой по смыслу.
После появления возможности установки сервера Simple Scada как службы и переход на такую модель стала проявляться периодически проблема - служба зависает(частично) и не может быть перестартована как из оснастки Simple Scada, так и их оснастки служб в Windows. В обоих случая при попытке остановки - процесс перестает отвечать и в конечном итоге оснастка Windows выдает ошибку по истечении времени попытки остановки. При это служба сервера SS точно перестает работать, оснастка SS недоступна, сессия к базе данных рвется со стороны SS. Приходится перезагружать весь сервер ВМ.

Вводная информация:
- релиз начиная где-то примерно с 2.5.хх, текущий 2.6.1.0 где постоянно проявляется.
- периодичность плавающая, но в среднем 1 раз в неделю.
- не связано с ключом лицензии - попробовал два способа различных подключения его к ВМ, не повлияло.
- служба сервера Simple Scada и база данных стоят на одной ВМ.

Особенности, что наводит на мысли:
- зависания проявляются обычно после длительного простоя или слабой активности все системы в целом. Ввиду особенностей эксплуатации есть периоды, когда 1-2 дня в SCADA подключены (то есть стоят не в bad статусе в ОРС)  всего 20-30 тегов с почти не меняющимися (или крайне редко меняющимися) значениями в течении суток.
- под фразой "служба SS зависла" понимается такое визуальное проявление проблемы: перестает выполнятся секундный скрипт внутренний, перестает выполнятся скрипт HTTP запросов погоды. Но при этом, если например перезагрузить базу данных, то в логах оснастки SS появляются записи об отключении и подключении к базе, то есть значит служба сервера как-то частично зависает (?).
- также при зависании продолжает работать переход по страницам, можно выключить и включить клиента, он подключится к серверу. Перестают выполнятся только внутренние скрипты, связанные с какой либо периодичностью. 
- к секундному скрипту привязан внутренний тег, нарастающий и выведенный на график в виде пилы. Поэтому зависание системы сразу видно, вместо пилы прямая линия.
« Изменён: 15 Августа 2022, 09:10:22 от Eugene_ »

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3000
    • Просмотр профиля
    • Simple-Scada
Здравствуйте.

Мы добавляли изменения связанные с работой таймеров службы в последнее обновление 2.6.2.1. После обновления на 2.6.2.1 (если уже скачивали её ранее, то скачайте повторно, т.к. мы обновляли файл установщика) тоже есть такая проблема?

Eugene_

  • Пользователь
  • **
  • Сообщений: 75
    • Просмотр профиля
нет, последнее не скачивали еще, частый апдейт версий на удаленной площадке несколько затруднителен. Как будет возможность проверим

Eugene_

  • Пользователь
  • **
  • Сообщений: 75
    • Просмотр профиля
Aпгрейд SCADA на площадке произведён до 2.6.3.1. База данных на этой же виртуальной машине версии MySQL 8.0.25.
Проблема продолжает повторятся  - в случае малого потока данных, SS теряет подключение к базе данных (или сессия закрывается сервером с потерей ID сессии соответственно?). При этом визуально клиент продолжает работать, графики в текущем режиме строятся, но ввиду малых объемов данных берутся предположу из кэша в оперативной памяти. При попытке перезапустить проект - служба зависает. И запустить заново без перезагрузки всей VM не удается. В приложенных картинках один из вариантов зависания - после нажатия кнопки "stop" проекта в оснастке.

Дополню, может быть важная деталь, к сообщениям выше:
- в текущей версии скрипты продолжали выполнятся, секундные в том числе;
- во всей истории сообщений выше, в логах ошибки о потере связи с базой данных или неудачных попытках записи в нее - нет;

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3000
    • Просмотр профиля
    • Simple-Scada
Здравствуйте.

Вышлите текущую версию проекта и логи на support@simple-scada.com для проверки.

Цитировать
Проблема продолжает повторятся  - в случае малого потока данных, SS теряет подключение к базе данных (или сессия закрывается сервером с потерей ID сессии соответственно?).
Сессия может быть автоматически закрыта, если сервер скады завис, в результате чего перестал отправлять запросы к БД. Тогда сессия (через какое-то время) закроется из-за отсутствия активности.

Цитировать
во всей истории сообщений выше, в логах ошибки о потере связи с базой данных или неудачных попытках записи в нее - нет;
Значит потери связи с БД не было. Судя по имеющейся информации проблема не связана с БД и малым потоком данных, больше похоже на зависание сервера скады. Пока не понятно по какой причине.

Цитировать
графики в текущем режиме строятся, но ввиду малых объемов данных берутся предположу из кэша в оперативной памяти.
Графики в меню трендов, или в компоненте "Временные тренды"? Компонент "Временные тренды" получает данные с сервера, а затем хранит их в оперативной памяти на клиентском ПК. Если графики перестали меняться и отображаются как прямые линии, значит сервер скады перестал передавать клиенту изменения переменных. Если данные на графиках меняются и добавляются, значит сервер правильно передаёт изменения.

Цитировать
В приложенных картинках один из вариантов зависания - после нажатия кнопки "stop" проекта в оснастке.
Это важный момент. До нажатия кнопки остановки проекта web-интерфейс службы работал правильно? Т.е. можно было просмотреть вкладки "Journal", "Projects" и другие до тех пор, пока Вы не попытались остановить проект?

Цитировать
И запустить заново без перезагрузки всей VM не удается.
Через диспетчер задач Windows, вкладка "Подробности" никак не удаётся завершить работу службы "SrvService"? Выделить и нажать "Снять задачу" (см. скрин во вложении).

На данный момент есть следующие предположения:
  • проблема как-то связана с USB-ключом (например, есть периодические потери связи с USB-ключом, или с пробросом ключа);
  • если в проект работает с OPC-DA серверами, то проблема может быть в этом;
  • возможно в проекте есть скрипты, которые допускают бесконечное выполнение (циклы с неправильными условиями, или вызовы скриптов друг на друга), или работают с огромным количеством данных (при котором обработка данных займёт часы);

Ещё вопросы:
1. Вы уверены, что проблема возникает именно при работе сервера скады как службы? Есть ли возможность установить сервер как обычное приложение?
2. Компьютер на котором запущен сервер скады никогда не уходит в спящий режим и т.п.?
3. Какая именно виртуальная машина используется?
4. Есть ли связь с какими-то событиями? Например, проблема возникает после попытки построить отчет, отправить сообщение и т.п.?
5. Что Вы видите на клиентском ПК при возникновении проблемы? Данные в компонентах "Поле" и "Уровень" замирают, или продолжают меняться? Может быть замирают данные с какого-то конкретного OPC-сервера?