This is topic Ошибка выгрузки архива в документ in forum SIAD/SQL. Архивирование в TRACE MODE / SIAD/SQL. Data Logging in TRACE MODE at Форум TRACE MODE: техническая поддержка.
При выгрузки архива в документ пишется ошибка 1012 - таймаут получения данных от удаленного узла. Что это значит? Ошибка появилась со временем, буквально 2 недели назад ошибки не было
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
Где находится архив и где генерируется документ? Уверены, что данные за запрошенный диапазон действительно есть в архиве? Проверьте, чтобы выборка была корректной (например метка левой границы была по времени правее правой, есть смотреть на ось времени и т.п.). Если межузловой обмен, то как настроен обмен, какие ключи используются в конфигурационном файле (если он есть)?
Можете прислать тестовый проект на адрес техподдержки с папками узлов проекта, архивом и описанием как проблема воспроизводится.
Posted by Yurchik1 (Участник № / Member № 8907) on :
Как запретить выгружать архив в тренд, пока идет выгрузка архива в документ? Документ формируется при посылке значения 1 во входное значение канала вызова документа
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
Если данные уже выгружаются на тренд, остановить выгрузку по команде нет возможности. Чтобы не давать возможности оперировать трендом, можно управлять доступом к нему, например через видимость (например с помощью слоев), одновременно посылая команду на это вместе с командой на генерацию документа.
Posted by Yurchik1 (Участник № / Member № 8907) on :
А возможно как-нибудь дать понять пользователю что архив выгружается в тренд? К примеру через ГЭ текст. Пока архив выгружается висела надпись.
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
При выборке из архива на тренд иконка архивного режима становится серой. У данного ГЭ нет вывода этой индикации в аргументы, поэтому вывести ее на другие ГЭ нет возможности.
Если происходит выборка на тренд и появляется команда на выборку в документ, этот запрос встает в очередь и будет выполнен последовательно.
[ 21.06.2022, 12:12: Сообщение отредактировал / Message edited by АдАстра. Техподдержка ]
Posted by Yurchik1 (Участник № / Member № 8907) on :
При работе со сторонней БД перезаписывается ли архив когда полностью заполнен или он будет выдавать сообщение что нет места?
Posted by Yurchik1 (Участник № / Member № 8907) on :
Ну вот скажите пожалуйста. В архив записывается не больше 50 каналов. Меняются они даже ни каждую секунду. А бывает и раз в минуту. Размер архива стоит 1Гб. И то для нашего проекта это очень мало. На объекте СКАДА проработала месяц. Архив заполнился на +- 60%. В итоге, когда делается выгрузка в тренды СКАДА начинает ругаться, мол больше очереди. И таких сообщений штук 5 пока работаешь с одним трендом. А у нас их 17 штук. Выгружать архив в документ, это вообще песня. Запускаешь проект на объекте, все исправно работает, выгрузка прекрасная (даже не смотря на то, что данные за 3 часа выгружаются в пределах 3-5 минут). Проходит месяц, выгрузка перестает выполнять свою функцию и пишет ошибку 1012. Таймаут получения данных от удаленного узла. Какого удаленного узла? В проекте в принципе нет удаленных узлов. Я могу продолжить рассказывать про сво
Posted by Yurchik1 (Участник № / Member № 8907) on :
про свой опыт, но думаю и так все понятно. Вопрос только один, на какие проекты, на какие объекты, каких масштабов расчитана ваша СКАДА система?
Posted by Yurchik1 (Участник № / Member № 8907) on :
Прошу ответить в скором времени
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
quote:Отправитель / Originally posted by Yurchik1: При работе со сторонней БД перезаписывается ли архив когда полностью заполнен или он будет выдавать сообщение что нет места?
Механизмы работы со сторонними БД и архивирование во внутренние СПАД-архивы различны, поэтому выборки из БД не влияют на работу архивирования. При архивировании файл архива заполняется по кругу (новые данные затирают самые старые). При помощи диагностических переменных можно контролировать заполнение архива.
[ 21.06.2022, 12:23: Сообщение отредактировал / Message edited by АдАстра. Техподдержка ]
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
quote:Отправитель / Originally posted by Yurchik1: Ну вот скажите пожалуйста. В архив записывается не больше 50 каналов. ...
Такой проект не является большим. Скорость работы с архивом зависит от его плотности, размера файла, характеристик ПК и загруженности его ресурсов. Необходимо выяснить в чем причина описанной проблемы. Пришлите на электронный адрес технической поддержки описание технических характеристик используемого на объекте ПК и используемого программного окружения (ОС, антивирусы, другое используемое ПО). Пришлите проект с описанием процедуры выборки (как ее произвести и какие временные метки задавались), приводящей к проблеме с папкой узла проекта целиком после запуска и с самим архивом. Можно через файлообменник.
Posted by Yurchik1 (Участник № / Member № 8907) on :
Помогите разобраться с sql. Как поставить размер архива в СКАДА? Сама база данных расчитана на 10Гб. Но как поставить в скада чтобы размер архива был 1Гб. Как проверить что архив перезаписывается?
Posted by Yurchik1 (Участник № / Member № 8907) on :
По какой причине может происходить ошибка при выгрузке данных с архива? Данные в архив записываются, а при выгрузке из архива на тренды и в документ возникает ошибка 1012
Posted by Yurchik1 (Участник № / Member № 8907) on :
Имеет ли пользователь по умолчанию доступ к архиву через графику?
Posted by Yurchik1 (Участник № / Member № 8907) on :
Еще один вопрос созрел. Если делать автоматическое создание копии, то переадрисация этой копии не работает? То есть она создастся в папке узла? Прошу ответить как можно быстрее
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
quote:Отправитель / Originally posted by Yurchik1: Помогите разобраться с sql. Как поставить размер архива в СКАДА? Сама база данных расчитана на 10Гб. Но как поставить в скада чтобы размер архива был 1Гб. Как проверить что архив перезаписывается?
Что касается sql: TRACE MODE не управляет СУБД, не управляет транзакциями и не накладывает ограничений на sql запросы. Управлять СУБД необходимо средствами самой СУБД.
Что касается архивов: Скорость заполнения архива зависит от многих параметров, главный их которых интенсивность записи. Каждая запись в архив минимум занимает 10 байт. В среднем обычно 20-30 байт, т.к. записи пишутся блоками и не всегда блоки заполняются до конца. В зависимости от динамики работы каналов плотность у блоков может быть разная, для оптимизации рекомендуется часто обновляемые параметры писать в один архив, а редко обновляемые в другой, так плотность архивов будет равномерная. Скорость доступа к архиву зависит от скорости доступа к диску + от размера кэша. Чем он больше, тем быстрее доступ.
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
quote:Отправитель / Originally posted by Yurchik1: По какой причине может происходить ошибка при выгрузке данных с архива? Данные в архив записываются, а при выгрузке из архива на тренды и в документ возникает ошибка 1012
1012 - сообщение сообщающее о 1012 – таймауте получения данных от удаленного узла.
Описание в справке в разделе "Генерация документов - Особенности взаимодействия МРВ с документом - Особенности извлечения данных монитором по запросу документа/экрана":
При запросе тренда документ/экран создает буфер для данных. Если количество данных, извлеченных монитором по запросу, превышает размер этого буфера, монитор проводит режекцию извлеченных данных по некоторому алгоритму (настройка этого алгоритма недоступна для пользователя).
***
МРВ может обращаться за данными к удаленному узлу.
Аргументы документа/экрана могут быть не привязаны или привязаны к каналам, которые архивируются в разные архивы.
Ckopocть выбopkи дaнныx из oднoгo apxивa вышe, чeм из нeckoльkиx.
К аргументу документа/экрана может быть привязан удаленный канал (в этом случае создается локальный CHCS-канал 71.3 – см. Связь через аргументы ), а также локальный канал, привязанный к удаленному каналу.
МРВ обращается за данными к удаленному узлу в следующих случаях:
на локальном узле архив не сконфигурирован, а локальный канал создан с помощью перетаскивания удаленного канала (см. Копирование и вставка объекта структуры ), у которого установлен флаг архивирования (в это случае в создаваемом локальном канале флаг архивирования устанавливается автоматически);
если есть хотя бы один аргумент, к которому привязан удаленный канал.
Рекомендуем проверить есть ли связи с удаленными каналами и запрашивать данные за меньшее интервал.
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
quote:Отправитель / Originally posted by Yurchik1: Имеет ли пользователь по умолчанию доступ к архиву через графику?
Задание тех или иных прав пользователя конфигурируется в канале класса Пользователь. Описание в справе в разделе: Разграничение доступа в TRACE MODE - Канал класса пользователь - Задание прав пользователей - Раздел Дополнительно:
Добавление (Запрет доступа к архиву) – если этот флаг установлен, доступ к архивам из графики запрещен;
Учитывайте, что при подключении копий архива необходимо установить признак архивирования каналу вызова Экрана (задать архив этому каналу). Данная настройка описана в справке в разделе: Каналы и системные переменные – Системные переменные - Группа ДИАГНОСТИКА - @e_SIAD:
Для подключения экранов и документов ко второй копии нужно установить признак архивирования для соответствующих каналов CALL (41, AB = 1). Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
quote:Отправитель / Originally posted by Yurchik1: Еще один вопрос созрел. Если делать автоматическое создание копии, то переадрисация этой копии не работает? То есть она создастся в папке узла? Прошу ответить как можно быстрее
Имеется в иду переадресация архива в СУБД? Этот механизм работает в реальном времени. Архивные данные пишутся или в архив, или в СУБД. Чтобы делать это одновременно необходимо создавать копию архивируемого канала.
Posted by Yurchik1 (Участник № / Member № 8907) on :
Я где-то написала СУБД? Возможно ли создавать копии архива автоматически с переадрисацией в другую папку?
Posted by Yurchik1 (Участник № / Member № 8907) on :
Почему архив в xml-файл выгружается 30 минут? Период 1 час. 54 переменных. В текстовый еще больше. Выгрузка делается с помощью канала root
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
quote:Отправитель / Originally posted by Yurchik1: Я где-то написала СУБД? Возможно ли создавать копии архива автоматически с переадрисацией в другую папку?
Да, в 13 сообщении топика был вопрос по sql. Да, возможно создавать копии в другой папке с использованием переменной @e_SIAD.
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
quote:Отправитель / Originally posted by Yurchik1: Почему архив в xml-файл выгружается 30 минут? Период 1 час. 54 переменных. В текстовый еще больше. Выгрузка делается с помощью канала root
Время выборки зависит от размеров архивов, плотности записанных данных, параметров ПК ( в т.ч. от типа ПЗУ).
Posted by Yurchik1 (Участник № / Member № 8907) on :
Можете пожалуйста прописать алгоритм реализации автоматического создания копии в другой папке, при заполнении архива на 95%
Posted by Yurchik1 (Участник № / Member № 8907) on :
Возможно ли подключить сразу несколько копий трёх разных архивов?
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
Использовать диагностическую переменную @q_SIAD_Q с Параметр=32…43 – приблизительный процент заполнения соответствующего архива. Программой на самом удобном языке при достижении 95 делать копию архива с помощью диагностической переменной @e_SIAD. Значение этой переменной определяет имя файла резервной копии и его размещение. Описание в справке: Приложения - Функции общего назначения - Копирование архивов и отчета тревог.
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
К каждому архиву можно подключить по одной копии.
Posted by Yurchik1 (Участник № / Member № 8907) on :
Я имею в виду если есть 3 копии созданные с разных архивов, возможно ли в реально времени подключить сразу 3 эти копии, а не только одну?
Posted by Yurchik1 (Участник № / Member № 8907) on :
У меня не работает сохранение копии в другой папке по данному алгоритму. В одном из топиков вы писали что данная функция временно не работает. Сейчас вы говорите что такая возможность есть. Так все таки это работает или нет?
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
quote:Отправитель / Originally posted by Yurchik1: У меня не работает сохранение копии в другой папке по данному алгоритму. В одном из топиков вы писали что данная функция временно не работает. Сейчас вы говорите что такая возможность есть. Так все таки это работает или нет?
Прошу Вас указывать ссылки на те топики, на которые Вы ссылаетесь.
Функция сохранения копии архива в отдельную директорию в актуальном релизе 6.10.2 (+патчи) успешно работает. Необходимо использовать системную переменную e_SIAD
Настройка данной процедуры описана в Справочной системе в разделах 1. "Каналы и системные переменные - Системные переменные - Группа Диагностика - e_SIAD" (актуальное описание для релиза 6.10.2) 2. "Приложения - Функции общего назначения - Копирование архивов и отчета тревог"
Создание копии при определенной степени заполнения архива, с точки зрения решения организационных вопросов, не рекомендуется, так как скорость формирования данных, которые поступают в АРМ. различна. По этому рекомендуется создавать копии архива по времени (например, в определенный день месяца). Для этого достаточно программно сравнивать текущую дату с заданной.
Что бы автоматически создавать копии архива при определенном заполнении архива, необходимо использовать системную переменную q_SIAD_Q c параметром=32...43 и программу, для формирования команды.
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
quote:Отправитель / Originally posted by Yurchik1: Я имею в виду если есть 3 копии созданные с разных архивов, возможно ли в реально времени подключить сразу 3 эти копии, а не только одну?
Уточню. По каждому архиву (SIAD1, SIAD2, SIAD3) одномоментно может происходить работа с тремя файлам - с текущим файлом архива (непосредственно SIAD1, SIAD2 и SIAD3), последней (свежей) копией архива и еще одной любой копией архива.
Файл текущего архива подключать не требуется, с ним происходит основная работа. При создании свежей копии архива, в зависимости от команды на создание копии, копия либо подключается, либо нет. При необходимости ее можно отдельно подключить. Подключение дополнительной копии файла архива рекомендуется через Панель управления SIAD.
Подробнее в Справочной системе в "Каналы и системные переменные - Системные переменные - Группа Диагностика - e_SIAD"
Posted by Yurchik1 (Участник № / Member № 8907) on :
Не получается подключить базу данных Firebird. Помогите понять как правильно это сделать? Подключение есть, но данные в бд не записываются
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
Подключается аналогично любой другой СУБД. Необходимо установить драйверы ODBC, если они не установились при установке СУБД. Возможно, потребуется установка 32-разрядной версии драйверов, т.к. TRACE MODE 6 32-разрядное приложение. После того, как в Администраторе ODBC Windows появится драйвер, действовать стандартно как при подключении любой СУБД по интерфейсу ODBC: http://www.adastra.ru/products/drivers/odbc/