C ++ Logger-Должен ли я использовать обычный xml-парсер? - PullRequest
0 голосов
/ 15 июня 2010

Я работаю над системой ведения журналов для своего 2D-движка, и я не понимаю, как мне следует создавать / редактировать файл и как выводить этот файл.

Я узнал, что XML - это скорее носитель данных, а не средство отображения данных, как HTML. Я читал, что я могу использовать конвертеры XML в HTML. Один из методов, о котором я подумал, - это запись символов в файл в HTML.

Я прошу у вас ясности в этих вопросах, переполнение стека.

Ответы [ 4 ]

1 голос
/ 15 июня 2010

Проблема с файлами XML или HTML заключается в том, что вы не можете добавлять файлы в любое время. Вы должны правильно закрыть последний тег (тег документа) в конце записи.

Поэтому это не популярный формат для ведения журнала.

Для ведения журналов я предлагаю использовать один из существующих механизмов журналирования, такой как Apache logger или кандидат в буст-журнал John Torjo. Они будут поддерживать уровни журналов, настройку времени выполнения и т. Д.

1 голос
/ 15 июня 2010

Создание XML (или HTML) файла не требует специальной библиотеки. Прямая конкатенация строк обычно достаточно хороша, возможно, вам придется закодировать некоторые специальные символы (например, > в >.

Но, как говорит Оуэн, простой текст - это журнал, более распространенный для файлов журналов. Один разумный компромисс - разделенные запятыми значения в текстовом файле, это дает вам небольшую структуру без больших накладных расходов. Например, веб-сервер Windows (IIS) использует этот формат по умолчанию, и если у вас есть некоторые поля, которые выводятся для каждой строки, такие как отметка времени или имя исходного файла и номер строки, это позволяет легко разделить их снова.

1 голос
/ 15 июня 2010

Если вы планируете записывать логи в XML-файлы, , пожалуйста , остановитесь.

Файлы журнала должны быть простыми текстовыми файлами, XML-из которых вводит ненужную сложность. Это не структурированные данные, они предназначены для чтения людьми, а не автоматическими инструментами.

Все начинается с XML-журналов , а затем идет вниз по склону .

1 голос
/ 15 июня 2010

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

Если вы должны пойти по пути разметки, я бы предложилФормат XML, содержащий минимальный набор разметки, который будет полезен в вашей ситуации.Вы можете использовать XML для записи структуры в ваших записях журнала (например, отметки времени, серьезности и кода операции), для которых было бы неудобно кодировать в HTML.

Обратите внимание, что вы также можете использовать гибрид и встраивать некоторый XHTMLтеги в элементе XML, целью которого является захват отображаемого текста, если хотите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...