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

 
 
> Логирование данных в файл.
Jenya7
сообщение Mar 20 2018, 09:02
Сообщение #1


Профессионал
*****

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



У меня по всему коду разбросанны сообщения типа
printf ("LIB ID = %d\n", lib_id);
сообщения выводятся серийно на терминал.

Сейчас нужно некоторые сообщения логировать в файл на SD карте.
Возникли вопросы по алгоритмике логирования данных
1. Прежде всего проверить есть ли место на SD - вопрос как это сделать? и если нет места? очистить файл и начать писать сначала?
2. Если файл открыт - добавить данные в файл, посмотреть флаг закрыть файл или нет.(я не хочу часто дергать файл - открывать\закрывать)
тогда что - держать глобальный указатель на файл?
3.Если файл закрыт - открыть с опцией "а+", добавить данные в файл, посмотреть флаг закрыть файл или нет.
Как вообще сделать покрасивше?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
k155la3
сообщение Mar 20 2018, 12:13
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 123
Регистрация: 8-03-09
Из: Днепр
Пользователь №: 45 848



Цитата(Jenya7 @ Mar 20 2018, 12:02) *
У меня по всему коду разбросанны сообщения типа
printf ("LIB ID = %d\n", lib_id);
. . .
Сейчас нужно некоторые сообщения логировать в файл на SD карте.
. . .
Как вообще сделать покрасивше?

Rem:
ф-ия printf довольно "массивная" из-за своей универсальности. Соотв-но время на ее работу немалое.
Вам возможно имеет смысл пересмотреть структуру вывода на терминал и логгирования
с точки зрения "событийности".
При возникновении события вместо "балета" с формированием строки через printf и выводом ее на USART
фиксировать данные по этому событию в бинарной форме { Timestamp, CodeEventId , DataEvent }.
При этом все пишется в очередь, из которой эти записи извлекаются и выводятся в лог (без переформатирования)
и на терминал (через парсер-конвертер с printf)

Неэффективно использовать в лог-массивах данные в не оптимальном "человеческом" формате.
Их неудобно обрабатывать, они занимают больше места.


Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Jenya7   Логирование данных в файл.   Mar 20 2018, 09:02
- - RobFPGA   Приветствую! Цитата(Jenya7 @ Mar 20 2018,...   Mar 20 2018, 09:43
- - HardEgor   Цитата(Jenya7 @ Mar 20 2018, 16:02) Сейча...   Mar 20 2018, 09:48
- - haker_fox   QUOTE (Jenya7 @ Mar 20 2018, 17:02) 1. Пр...   Mar 20 2018, 10:01
- - Jenya7   Если подвести итог вышесказанному получиться что т...   Mar 20 2018, 10:12
|- - andrew_b   Цитата(Jenya7 @ Mar 20 2018, 13:12) Код c...   Mar 20 2018, 11:25
||- - Jenya7   Цитата(andrew_b @ Mar 20 2018, 16:25) Что...   Mar 20 2018, 12:01
||- - andrew_b   Цитата(Jenya7 @ Mar 20 2018, 15:01) IAR д...   Mar 20 2018, 12:13
||- - jcxz   Цитата(andrew_b @ Mar 20 2018, 14:13) Есл...   Mar 20 2018, 12:21
||- - Jenya7   Цитата(jcxz @ Mar 20 2018, 17:21) IAR име...   Mar 20 2018, 12:24
|- - haker_fox   QUOTE (Jenya7 @ Mar 20 2018, 18:12) я не ...   Mar 20 2018, 13:02
|- - RobFPGA   Приветствую! Цитата(haker_fox @ Mar 20 20...   Mar 20 2018, 13:08
|- - jcxz   Цитата(RobFPGA @ Mar 20 2018, 15:08) логр...   Mar 20 2018, 13:15
|- - RobFPGA   Приветствую! Цитата(jcxz @ Mar 20 2018, ...   Mar 20 2018, 13:30
|- - jcxz   Цитата(RobFPGA @ Mar 20 2018, 15:30) Вобщ...   Mar 20 2018, 15:10
|- - RobFPGA   Приветствую! Цитата(jcxz @ Mar 20 2018, 1...   Mar 20 2018, 15:30
|- - jcxz   Цитата(RobFPGA @ Mar 20 2018, 17:30) Но е...   Mar 20 2018, 15:57
|- - RobFPGA   Приветствую! Цитата(jcxz @ Mar 20 2018, ...   Mar 20 2018, 16:56
- - AlexandrY   Цитата(Jenya7 @ Mar 20 2018, 11:02) Как в...   Mar 20 2018, 10:40
|- - Jenya7   Цитата(AlexandrY @ Mar 20 2018, 15:40) Я ...   Mar 20 2018, 10:50
|- - jcxz   Цитата(Jenya7 @ Mar 20 2018, 12:50) так в...   Mar 20 2018, 12:00
|- - Jenya7   Цитата(jcxz @ Mar 20 2018, 17:00) Если у ...   Mar 20 2018, 12:14
|- - jcxz   Цитата(Jenya7 @ Mar 20 2018, 14:14) у мен...   Mar 20 2018, 12:28
|- - Jenya7   Цитата(jcxz @ Mar 20 2018, 17:24) Как тут...   Mar 20 2018, 12:31
|- - jcxz   Цитата(Jenya7 @ Mar 20 2018, 14:30) а я в...   Mar 20 2018, 12:38
|- - Jenya7   Цитата(jcxz @ Mar 20 2018, 17:38) Я не зн...   Mar 20 2018, 12:53
|- - jcxz   Цитата(Jenya7 @ Mar 20 2018, 14:53) но в ...   Mar 20 2018, 12:59
- - haker_fox   QUOTE (jcxz @ Mar 20 2018, 21:15) Заказан...   Mar 21 2018, 01:43
- - AlexandrY   Цитата(haker_fox @ Mar 21 2018, 03:43) Оп...   Mar 21 2018, 05:51
- - jcxz   Цитата(haker_fox @ Mar 21 2018, 03:43) Оп...   Mar 21 2018, 08:39


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

 


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


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