Стартовая страница › Форумы › Разработка и интеграция › Чтение архивов за прошлый период и Slice
- В этой теме 16 ответов, 3 участника, последнее обновление 8 месяцев, 2 недели назад сделано
manjey73.
-
АвторСообщения
-
10.08.2025 в 13:32 #39878
manjey73УчастникСобственно читать архивы не проблема, но есть один момент, связанный с тем, что у нас ограничена БД некоторой датой. И если мы читаем архив на дату, раньше ограничения, то ни драйвер, ни сервер не дает никакой информации об этом (ну или я не нашел).
Так вот есть ли какой-то способ определить и вывести в лог, что архив за данную дату не может быть прочитан (даже если можно прочитать) по причине того, что он просто не сохранится никуда, так как дата чтения не соответствует настройкам архива?
11.08.2025 в 12:38 #39907
MikhailМодераторТолько если настройки архива прочитать.
Если выполняется чтение данных за пределами периода, в котором архив хранит данные, то возвращается пустой результат.11.08.2025 в 12:41 #39909
manjey73УчастникРечь о записи. Как прочитать настройки архива из драйвера? и нужно ли это в принципе?
Было бы более гуманнее, если бы Сервер возвращал Коммуникатору, что «Извиняйте батьку, бананив немае, архив не записан потоу-то»… И уже это просто кидать в лог.
12.08.2025 в 13:35 #39927
MikhailМодератор> Как прочитать настройки архива из драйвера?
На мой взгляд, данная информация в драйвере будет лишней, как и причина, по которой отсутствуют данные в архиве.18.08.2025 в 08:27 #39965
manjey73УчастникВообще Slice очень неинформативен. Суть. Есть файлы в БД созданные предыдущей вариацией драйвера. Что-то поменял, запускаю чтение архива и тишина… полная, как в пустоту ушло.
Ну, думаю, напортачил где-то в коде. А потом просто беру, удаляю полностью архивы, перезапускаю сервер и опять чтение, и упс — архивы записались.то есть что такого в БД? что перестает срабатывать slice? meta файл, еще что-то?
Просто отсутствует любая информация от сервера что не понравилось при передаче архива.
18.08.2025 в 15:46 #39970
manjey73УчастникЕще один момент, в уже сформированную БД нельзя дописать каналы 🙁
Большая печаль по данному поводу.
Я перенастроил запись в БД «Hour» и не получил ровным счетом НИЧЕГО.Теперь внимание вопрос, мы подключили один прибор, прочитали в БД за прошлый месяц данные. Прошел месяц, подключили еще один прибор и пытаемся прочитать архивы уже за позапрошлый месяц (тот же самый месяц, куда писали первый прибор) И…. ничего, пусто…
18.08.2025 в 15:50 #39971
manjey73УчастникПолучается система не имеет возможностей изменить метаданные БД за определенный день, при добавлении каналов, связанных с этой БД и записи архивных значений в прошлое ?
Это только на встроенных БД или тоже самое будет и с Postgre не применяя экспортирование?
Если так, то это архикосяк.
-
Ответ изменён 8 месяцев, 3 недели назад пользователем
manjey73.
18.08.2025 в 16:13 #39973
manjey73УчастникИзвиняюсь, возможно все эти катаклизмы связаны с тем, что я полностью менял каналы с тегами 🙂
Будет требоваться более глобальное тестирование этого момента.
18.08.2025 в 17:15 #39974
manjey73УчастникИ таки да, в сформированную БД, где не было канала, канал добавлен не был. Надо полностью удалить папку БД, чтобы каналы добавились при чтении архивных записей.

Хотя были добавлены каналы до 645-го
19.08.2025 в 13:02 #39980
MikhailМодераторИспользуйте архив PostgreSQL. В файловом архиве требуется изменять структуру данных, чтобы добавить канал, это происходит при старте Сервера.
19.08.2025 в 13:11 #39982
manjey73УчастникТо есть изначально, если убрать все мои игры с архивами (менялись каналы для тестирования, переименовывались и т.д.), если архивы будут встроенными, драйвер все запишет, потом по прошествию времени будут добавлены новые каналы нового устройства может не произойти запись архивов?
Или произойдет? У меня нет 2-х приборов для тестов. Ну выпросить могу, но если честно устал я от Логики 🙂 надо отдохнуть….
19.08.2025 в 13:12 #39983
manjey73УчастникБольше всего интересует обратная связь от Сервера при исполнении кода Slice, чтобы Сервер что-то возвращал, типа каналы (список) такие-то не сохранились по тому-то…
Ну и в том же духе.20.08.2025 в 16:50 #39997
MikhailМодераторС архивами работает Сервер. Коммуникатор не работает с архивами.
Драйвер должен собрать данные и передать их Коммуникатору. Драйвер может получить от Коммуникатора сигнал, что архивы ушли «источнику данных». Дальнейшая судьба данных не относится к зоне ответственности драйвера.20.08.2025 в 17:05 #39998
manjey73УчастникНу как не относится? вернее интересна судьба переданных архивов источнику, то есть надо четко понимать, что архивы не просто ушли «источнику данных» но и обработаны, сохранены в этом самом источнике. И желательно с пониманием на какую точку времени они были сохранены и все ли каналы были сохранены.
А то так пуляешь в пустоту иногда и не понимаешь причины а почему?
Вот банальный пример — Коммуникатор работает по локальному времени, пока этого не понял, не понимал, на какое время происходит запись архива.20.08.2025 в 22:20 #39999
JurasskParkУчастникВ драйвер можно давить связь с сервером через TcpClient и через него проверить пришли ли данные… 😂
Да даже через него и отправлять…)
-
Ответ изменён 8 месяцев, 3 недели назад пользователем
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.
