реклама на сайте
подробности

 
 
> Как правильнее организовать ведение журнала работы устройства на диске..
Alechin
сообщение Aug 28 2007, 09:39
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 158
Регистрация: 27-06-05
Из: Химки, Моск.обл.
Пользователь №: 6 334



Имеем контроллер, управляющий неким устройством. Сейчас по всем событиям, происходящим в процессе работы, в терминальный последовательный порт выдается информация о событии и реакции на него в текстовом виде (просматривается на подключенном ноутбуке-терминале). Теперь необходимо этот журнал работы вести на имеющимся в системе флеш-диске с файловой системой (FAT16 - все под DOSом). Ни как на ум не приходит красивое решение по ведению этого журнала.
В предыдущем устройстве аналогичное делал - но там был сеансный режим работы (короткие сеансы с большими перерывами) и поэтому создавался каталог для журнала ("/LOG"), в нем каталог с текущей датой ("/LOG/070828/" для 28 августа 2007) и далее для текущего сеанса текстовый файл с именем, сформированным по времени начала сеанса ("/LOG/070828/13-25.log"). По окончании сеанса файл закрывался (fclose). Все было хорошо - и искать удобно, и при пропадании питания и других сбоях в худшем случае терялась информация только по последненму сеансу.
Здесь же работа ведется непрерывно, хотя и события возникают не чаще 1 раза в секунду, даже в несколько секунд), поэтому вроде как нужен один файл, но тогда при пропадании питания (допустимая ситуация) файл будет не закрыт и вероятно потеряна записанная в него ранее информация. Да и при заполнении диска непонятно как с работать - нужно будет как-то удалять устаревшие записи, т.е. вести "перелопачивание" всего файла. Да скачивание такого файла по медленному порту терминала и ручной поиск информации по какому либо событию (оператором в случае разбора журнала работы) затруднен в текстовом файле в 16 МБайт (объем флеш-диска). Значит разбивать на "короткие" файлы за небольшие промежутки времени? Но это как-то нелогично, ведь процесс работы устройства непрерывен. Да и индексироваться для поиска тоже надо как-то будет.
Да - формат сообщений в журнале (логе) менять нельзя - это текстовые строки (ASCIIZ) различной длины (но начинаются они всегда с даты-времени, одно сообщение не может занимать более одной строки), т.е. построить что-то двоичное структуроподбное нельзя.
Кто как поступал в аналогичных ситуациях, и вообще, есть ли какие-нибудь правила по ведению логов?
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Alechin   Как правильнее организовать ведение журнала работы устройства на диске..   Aug 28 2007, 09:39
- - rezident   Вы определите для себя какое самое уязвимое место ...   Aug 28 2007, 11:37
|- - Alechin   Хорошо, спрошу немного конкретнее - как организова...   Aug 30 2007, 10:29
- - vmp   Может быть заводить по одному файлу на каждый день...   Aug 30 2007, 12:43
|- - Alechin   Цитата(vmp @ Aug 30 2007, 16:43) Может бы...   Aug 30 2007, 12:48
|- - vmp   Цитата(Alechin @ Aug 30 2007, 16:48) Возм...   Aug 30 2007, 13:06
|- - rezident   Цитата(Alechin @ Aug 30 2007, 18:48) Я ду...   Oct 3 2007, 11:24
- - Elvin   Как с решением задачки? Много времени прошло Если...   Sep 24 2007, 08:24
|- - Alechin   ЦитатаКак с решением задачки? Пока никак - эту зад...   Sep 24 2007, 10:49
|- - vshemm   Не очень понятно, почему нельзя поменять файловую ...   Sep 28 2007, 16:04
|- - редактор   Лучший вариант - организовать подхват питания. В н...   Oct 3 2007, 10:37
|- - vshemm   Цитата(редактор @ Oct 3 2007, 14:37) Лучш...   Oct 3 2007, 16:47
|- - редактор   Все зависит от конкретной системы. Если это тумбле...   Oct 5 2007, 12:25
- - oran-be   Вообще вся проблема создания таких систем упираетс...   Nov 21 2007, 15:10


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 06:52
Рейтинг@Mail.ru


Страница сгенерированна за 0.01369 секунд с 7
ELECTRONIX ©2004-2016