PDA

Просмотр полной версии : Ошибки в работе визуализации



vozlov
23.01.2023, 22:48
Возникают следующие проблемы с визуализацией, закономерность появления пока не установлена (может возникнуть через несколько дней, может через пару часов):

1. Иногда перестает отображать с вот таким сообщением:
https://s1.hostingkartinok.com/uploads/images/2023/01/e11fa9c72bc58f975fd9688f2708afb8.png

Обновление страницы в браузере иногда помогает, иногда нет

2. Визуализация полностью отваливается, в логе есть сообщение *EXCEPTION* WebServerTask:
https://s1.hostingkartinok.com/uploads/images/2023/01/e6aa37b49e37a6145fd0c9cdc9e10db8.png

Помогает программная перезагрузка контроллера.

Как можно избавиться от этих ошибок? Прошивка plc200 1.3.0309.1303

Евгений Кислов
24.01.2023, 06:15
Добрый день.
Доступ к ПЛК осуществляется только в пределах локальной сети? Или через интернет?
Какое еще оборудование находится в одной локальной сети с ПЛК?

vozlov
24.01.2023, 23:06
В одной сети с ПЛК шлюз. Доступ к визуализации через шлюз через интернет.

Евгений Кислов
25.01.2023, 07:33
В одной сети с ПЛК шлюз. Доступ к визуализации через шлюз через интернет.

Я наблюдал такую же ситуацию именно с контроллерами, к которым есть доступ из интернета.
Она связана с тем, что в интернете есть сервисы, которые регулярно сканируют весь пул IP-адресов по всем портам для поиска и эксплуатации известных уязвимостей.
Web-сервера контроллер не выдерживает такого интенсивного сканирования и падает.
Решение - на уровне шлюза разрешить подключения только с известных IP-адресов и отвергать все остальные.

vozlov
25.01.2023, 21:12
Открыт только порт для веб, остальные закрыты.

Белый список IP-адресов сразу уничтожает все преимущества веба.

Может, есть какое-нибудь обновление для веб-сервера?

Евгений Кислов
26.01.2023, 06:26
Открыт только порт для веб, остальные закрыты.

Белый список IP-адресов сразу уничтожает все преимущества веба.

Может, есть какое-нибудь обновление для веб-сервера?

По сравнению с нашей текущей версией - вышло только одно обновление для web-сервера (в ноябре 2022), но нет возможности его получить, так как в данный момент CODESYS Group не сотрудничает с компаниями из РФ.

vozlov
26.01.2023, 11:36
Версия 3.5.18.0, верно?
В текущей версии есть эта уязвимость (https://customers.codesys.com/index.php?eID=dumpFile&t=f&f=17094&token=2fb188e2213c74194e81ba61ff99f1c68602ba4d&download=), которая, возможно, и есть причина ошибок...

Евгений Кислов
26.01.2023, 11:47
Версия 3.5.18.0, верно?
В текущей версии есть эта уязвимость (https://customers.codesys.com/index.php?eID=dumpFile&t=f&f=17094&token=2fb188e2213c74194e81ba61ff99f1c68602ba4d&download=), которая, возможно, и есть причина ошибок...

Да, в 3.5.18.0.
Подобные уязвимости пару раз в год находят, так что она может как и быть причиной вашей ситуации, так и вообще не влиять на нее.

vozlov
27.01.2023, 09:32
Возможно ли вытащить отдельно веб-сервер из версии 3.5.18.0? Она ведь доступна на сайте Codesys (https://store.codesys.com/de/), верно?

Или это возможно только из других устройств, в которых прошит последний рантайм? Или под каждый бренд есть какие-то отличия?

Евгений Кислов
27.01.2023, 09:44
Или это возможно только из других устройств, в которых прошит последний рантайм?

Именно так.

vozlov
27.01.2023, 11:34
Как проще всего реализовать перезапуск веб-сервера, если он упал?

*EXCEPTION* WebServerTask
State: failed
File $PlcLogic$/$visu$/ requested ...

Может, есть опыт использования служб мониторинга / перезапуска других служб?

Евгений Кислов
27.01.2023, 11:41
Как проще всего реализовать перезапуск веб-сервера, если он упал?

*EXCEPTION* WebServerTask
State: failed
File $PlcLogic$/$visu$/ requested ...

Может, есть опыт использования служб мониторинга / перезапуска других служб?

Я пробовал это делать так:



# файл /home/root/check_webvisu.sh
#!/bin/sh

curl localhost:8080 -m 5 2>err2.txt
sleep 10

myfilesize=$(wc -c "err2.txt" | awk '{print $1}')

if [[ "$myfilesize" -gt "0" ]]; then
rm err2.txt
echo "webvisu is dead"
reboot
fi




# в /etc/crontabs/root:
*/5 * * * * /home/root/check_webvisu.sh


Но в моем случае это приводило к тому, что ребут происходил каждые пару минут (хотя сервер web-визу падал существенно реже).
Я осознанно использовал именно ребут контроллера, а не рантайма CODESYS, так как ребут рантайма в ряде случаев не помогал.
Более глубоко я этот вопрос не исследовал.

vozlov
27.01.2023, 14:38
а вот эта штука не срабатывает при падении веба, верно?

https://s1.hostingkartinok.com/uploads/images/2023/01/6d9a315c0608495a2e23143f58e3a881.jpg

Евгений Кислов
27.01.2023, 16:02
Да, вы правы, потому что сам рантайм-то продолжает работать.

vozlov
27.01.2023, 22:02
Может, еще попробовать обновить CODESYS Visualization до версии 4.3.0.0

Там есть в описании (https://de.codesys.com/fileadmin/data/Images/System/Releaseinformation/Patch-Note-CODESYS-Visualization-4300.html):


VIS-1940 Bug Crash after opening WebVisualization using VPN connection to PLC Fixed

У нас не VPN, но а вдруг...

Вот все отлично с ПЛК, кроме нестабильной работы веба.

Евгений Кислов
27.01.2023, 22:16
Может, еще попробовать обновить CODESYS Visualization до версии 4.3.0.0

Там есть в описании (https://de.codesys.com/fileadmin/data/Images/System/Releaseinformation/Patch-Note-CODESYS-Visualization-4300.html):



У нас не VPN, но а вдруг...

Вот все отлично с ПЛК, кроме нестабильной работы веба.

Только это не на стороне ПЛК. Если перейти на работу внутри локальной сети (с доступом к ней извне по VPN, например) - то проблема исчезнет.

vozlov
27.01.2023, 23:30
Только это не на стороне ПЛК. Если перейти на работу внутри локальной сети (с доступом к ней извне по VPN, например) - то проблема исчезнет.

Так непонятно, в чем отличие, откуда идут запросы, из локальной сети, или от роутера (для ПЛК это будет то же самое, что и запрос от клиента в локальной сети).

Схема следующая: в интернете роутер. На порт ПЛК проброшен внешний порт роутера. Каких-либо атак либо огромного количества запросов на внешний порт роутера не фиксируем.

Если есть недостаток в веб-сервере, то и в локальной сети можно поймать такую же проблему.

Евгений Кислов
28.01.2023, 08:36
Каких-либо атак либо огромного количества запросов на внешний порт роутера не фиксируем.

Вы сопоставляли логи роутера с метками времени появления исключения web-сервера?


Если есть недостаток в веб-сервере, то и в локальной сети можно поймать такую же проблему.

Я могу согласиться, что при желании и в локальной сети можно устроить подобную проблему.
Можно устроить шторм из-за сетевой петли.
Можно подключить всё оборудование объекта (в т.ч. камеры системы видеонаблюдения) в одну подсеть и потом удивляться, почему "веб-сервер иногда падает".

Можно ли назвать это недостатком веб-серверов - полемический вопрос.

Мой опыт показывает, что в разумно спроектированных локальных сетях веб-сервер ПЛК работает годами без каких-то проблем.
При применении усилий по обеспечению безопасности, которые я уже описывал выше - и при доступе через интернет нет особых проблем.
См., например, эту тему:
https://owen.ru/forum/showthread.php?t=33968&p=346882&viewfull=1#post346882

Прошло два года с последнего сообщения и автор больше не упоминал ни о каких проблемах (последний его пост на нашем форуме - неделю назад, т.е. он продолжает его регулярно посещать).

vozlov
28.01.2023, 18:32
Вы сопоставляли логи роутера с метками времени появления исключения web-сервера?
Да. Никакой закономерности нет. Просто падает иногда. Когда через неделю, когда 10 раз в течение часа. Если б он хотя бы тип исключения писал, а не просто Exception. Вебом пользуются 2-3 пользователя одновременно. Неужели это много?

Можно ли мониторить наличие процесса WebServer (или как он там называется), и просто запускать его принудительно, если его нет в списке процессов?

Евгений Кислов
28.01.2023, 18:43
Да. Никакой закономерности нет. Просто падает иногда. Когда через неделю, когда 10 раз в течение часа. Если б он хотя бы тип исключения писал, а не просто Exception. Вебом пользуются 2-3 пользователя одновременно. Неужели это много?

Можно ли мониторить наличие процесса WebServer (или как он там называется), и просто запускать его принудительно, если его нет в списке процессов?

Насколько я знаю - такой возможности нет.

DenisV
27.07.2023, 11:20
Да. Никакой закономерности нет. Просто падает иногда. Когда через неделю, когда 10 раз в течение часа. Если б он хотя бы тип исключения писал, а не просто Exception. Вебом пользуются 2-3 пользователя одновременно. Неужели это много?

Можно ли мониторить наличие процесса WebServer (или как он там называется), и просто запускать его принудительно, если его нет в списке процессов?

Вам в итоге удалось победить вашу проблему?

У меня похожее поведение происходило



В итоге пока не удалось победить исключения, даже с пустым проектом...

Как выглядит: через некоторое время пропадает доступ к визуализации, веб-конфигуратор доступен, в журнале ПЛК сообщения об исключении "Exception: *EXCEPTION* WebServerTask 0xb6e5d6c0 0x1 0xb42ebd50" иногда перед возникновением исключения ещё появляется сообщение "Warning: Unbalanced calls to WebServerRequestRunning/WebServerReleaseRunning"

62378 62379 62380 62381

Во вложении прикрепляю zip папку c архивом проекта и конфиг используемого окружения.

NataliaD
07.08.2023, 17:37
Пропал доступ к библиотеке visuinputs 4.1.0.0 (System) установлен CODESYS 3.5 sp17 path3, в загрузке с сайта store.codesys.com отказывает (наверное запрещен доступ с России), подскажите где можно скачать эту библиотеку и можно ли в текущей версии использовать visuinputs 4.2.0.0 - где то мне в форуме попадалось что данная библиотека уже появилась, спасибо

Евгений Кислов
07.08.2023, 18:25
Пропал доступ к библиотеке visuinputs 4.1.0.0 (System) установлен CODESYS 3.5 sp17 path3, в загрузке с сайта store.codesys.com отказывает (наверное запрещен доступ с России), подскажите где можно скачать эту библиотеку и можно ли в текущей версии использовать visuinputs 4.2.0.0 - где то мне в форуме попадалось что данная библиотека уже появилась, спасибо

1. https://www.mediafire.com/file/ylbct1hp37wqy6k/VisuInputs.compiled-library-v3/file
2. Можно.

Godlike_S
23.08.2023, 13:27
Доброго дня!
В итоге удалось найти какое-либо 100% решение проблемы?
Имеем ПЛП210, WEB упал через 2 дня, отсоединил от контроллера все внешние сети, осталась только ВП110 и... через день опять сервер лег

Евгений Кислов
23.08.2023, 13:30
Доброго дня!
В итоге удалось найти какое-либо 100% решение проблемы?
Имеем ПЛП210, WEB упал через 2 дня, отсоединил от контроллера все внешние сети, осталась только ВП110 и... через день опять сервер лег

Добрый день.
У разных клиентов встречаются разные проблемы.
Выложите ваш конкретный проект, в котором стабильно зависает web-визуализация - посмотрим, в чем может быть дело.

Godlike_S
23.08.2023, 13:50
Добрый день.
У разных клиентов встречаются разные проблемы.
Выложите ваш конкретный проект, в котором стабильно зависает web-визуализация - посмотрим, в чем может быть дело.
Не могу прилепить на форум, ругается что запрос большой. Прикрепляю ссылку...
https://dropmefiles.com/tOdJd

Кстати, аналогичная проблема появилась и на СПК110 после обновления прошивки (SP17)

Евгений Кислов
24.08.2023, 06:34
Не могу прилепить на форум, ругается что запрос большой. Прикрепляю ссылку...
https://dropmefiles.com/tOdJd

Кстати, аналогичная проблема появилась и на СПК110 после обновления прошивки (SP17)

У вас в символьной конфигурации нет ни одной переменной, и поэтому начинается утечка дескрипторов.
Когда их лимит для процесса (1024) исчерпывается - то контроллер "зависает".
Удалите из вашего проекта символьную конфигурацию (или добавьте в нее хотя бы одну переменную "элементарного" типа - INT, REAL и т.п.) - это решит проблему.

Godlike_S
24.08.2023, 08:53
У вас в символьной конфигурации нет ни одной переменной, и поэтому начинается утечка дескрипторов.
Когда их лимит для процесса (1024) исчерпывается - то контроллер "зависает".
Удалите из вашего проекта символьную конфигурацию (или добавьте в нее хотя бы одну переменную "элементарного" типа - INT, REAL и т.п.) - это решит проблему.
Понял, попробую…

Godlike_S
24.08.2023, 12:24
Удалил, запустил на тест

Godlike_S
09.09.2023, 12:53
Работает без сбоев пока, будем посмотреть... Что интересно на предыдущей версии прошивки WEB-сервер не падал, в программу так же была добавлена символьная конфигурация :confused:

Задумкин Сергей
27.09.2023, 09:45
Добрый день.
Решили вставить gif изображение (вращающийся вентилятор) в веб-визуализацию. В менеджере визуализаций включил опцию "поддержка клиентских анимаций..." - вентилятор крутится, но пропали все остальные элементы визуализации (или уехали в левый верхний угол). Что может быть не так?
Оборудование:
ПЛК210 + ВП110

Без gif и "поддержки клиентских анимаций":
70504

C gif и c "поддержкой клиентских анимаций" на ПК в Codesys:
70505

А вот так это выглядит на ВП110:
70506

Евгений Кислов
27.09.2023, 09:57
Добрый день.
Решили вставить gif изображение (вращающийся вентилятор) в веб-визуализацию. В менеджере визуализаций включил опцию "поддержка клиентских анимаций..." - вентилятор крутится, но пропали все остальные элементы визуализации (или уехали в левый верхний угол). Что может быть не так?
Оборудование:
ПЛК210 + ВП110

Без gif и "поддержки клиентских анимаций":
70504

C gif и c "поддержкой клиентских анимаций" на ПК в Codesys:
70505

А вот так это выглядит на ВП110:
70506

Добрый день.
Выложите, пожалуйста, ссылку на простейший проект (в виде архива проекта: Файл - Архив проекта), в котором я смогу повторить проблему.

Задумкин Сергей
27.09.2023, 15:45
Добрый день.
Выложите, пожалуйста, ссылку на простейший проект (в виде архива проекта: Файл - Архив проекта), в котором я смогу повторить проблему.

Выяснилось, что проблема решается перезагрузкой ВП110. Наткнулись на это решение случайно когда попробовали сменить стиль визуализации. ВП110 при этом работала постоянно и при смене стиля визуализации оставались какие-то артефакты от предыдущего стиля. Закралось подозрение, что ВП110 хранит что-то в кэше (ну или что то типа того) и решили перезагрузить - все заработало, в т.ч. и поддержка клиентских анимаций.

Только при поддержке клиентских анимаций диалоги открываются не мгновенно, а с подобием анимации "всплывания" и выглядит это мягко говоря не очень, медленно и тормознуто. Экраны переключаются тоже гораздо медленнее (как на СПК примерно). Можно как-нибудь отключить эти эффекты?

Евгений Кислов
27.09.2023, 16:12
Выяснилось, что проблема решается перезагрузкой ВП110. Наткнулись на это решение случайно когда попробовали сменить стиль визуализации. ВП110 при этом работала постоянно и при смене стиля визуализации оставались какие-то артефакты от предыдущего стиля. Закралось подозрение, что ВП110 хранит что-то в кэше (ну или что то типа того) и решили перезагрузить - все заработало, в т.ч. и поддержка клиентских анимаций.

Только при поддержке клиентских анимаций диалоги открываются не мгновенно, а с подобием анимации "всплывания" и выглядит это мягко говоря не очень, медленно и тормознуто. Экраны переключаются тоже гораздо медленнее (как на СПК примерно). Можно как-нибудь отключить эти эффекты?

Только путем снятия галочки Поддержка клиентских анимаций.

Емельянов Кирилл
28.09.2023, 01:36
Добрый день.
Решили вставить gif изображение (вращающийся вентилятор) в веб-визуализацию. В менеджере визуализаций включил опцию "поддержка клиентских анимаций..." - вентилятор крутится, но пропали все остальные элементы визуализации (или уехали в левый верхний угол). Что может быть не так?
Оборудование:
ПЛК210 + ВП110

Без gif и "поддержки клиентских анимаций":
70504

C gif и c "поддержкой клиентских анимаций" на ПК в Codesys:
70505

А вот так это выглядит на ВП110:
70506

Если делаете не для себя, то от лица эксплуатирующих операторов, умоляю, уберите все эти вращалки. В codesys есть миллионы цветов с помощью которых вы можете сообщить о статусе оборудования. Сочувствую всем, кто будет вынужден в течении смены смотреть на вращающиеся круглешки

Godlike_S
21.03.2024, 12:03
У вас в символьной конфигурации нет ни одной переменной, и поэтому начинается утечка дескрипторов.
Когда их лимит для процесса (1024) исчерпывается - то контроллер "зависает".
Удалите из вашего проекта символьную конфигурацию (или добавьте в нее хотя бы одну переменную "элементарного" типа - INT, REAL и т.п.) - это решит проблему.

Докладаю, после удаления пустой символьной конфигурации не было ни единого падения WEB-сервера (на 5-ти объектах). В связи с этим задам вопрос: это какая-то особенность последней версии прошивки?

Евгений Кислов
21.03.2024, 13:28
Докладаю, после удаления пустой символьной конфигурации не было ни единого падения WEB-сервера (на 5-ти объектах). В связи с этим задам вопрос: это какая-то особенность последней версии прошивки?

Это баг в нашем компоненте OwenCloud. Мы планируем его исправить в одной из следующих прошивок.