Что такое хороший размер (в байтах) для файла журнала?

Я использовал DBISAM и kbMemTable в различных случаях.

то, Что мне нравится приблизительно DBISAM, - то, что он имеет замечательные особенности и обычно очень надежен. Я использовал его в больших базах данных, полнотекстовом поиске, режиме только для чтения, CGIs и многих других ситуациях.

Это является довольно большим по сравнению с kbMemTable, или SQLite основывал компоненты, все же. И у Вас не может быть единственного файла для каждой базы данных (или даже таблица) - в зависимости от ситуации, которая является главным недостатком.

kbMemTable является крошечным, и это является большим для небольших количеств данных. Так как это работает в памяти, это должно быть небольшое количество данных, конечно.

Еще одна опция я взял несколько своих настольных приложений, выводит данные непосредственно из моей иерархии объектов с помощью TWriter/TReader. Это безусловно, что самая маленькая опция, и нелепо быстра по сравнению с использованием базы данных. Файлы данных являются крошечными, также.

Это имеет все виды недостатков, хотя - необходимо кодировать управление версиями в том, если Вы могли бы хотеть когда-либо добавить/изменить поля, если это не в оперативной памяти, это еще более сложно, никакая многопользовательская поддержка вообще, и т.д.

26
задан Alvin Row 5 October 2009 в 16:32
поделиться

4 ответа

Мои настройки ведения журнала по умолчанию:

RotatingFileHandler(filename, maxBytes=10*1024*1024, backupCount=5)
25
ответ дан 28 November 2019 в 07:18
поделиться

Как сказано в других ответах, однозначного и быстрого ответа не существует. Это очень сильно зависит от вашего приложения и вашей среды. Вот несколько рекомендаций, которые я использую.

Для многопользовательского приложения на типичном сервере: Настройте ведение журнала так, чтобы на одно действие пользователя создавалось не более 1 или 2 записей, а затем чередуйте их ежедневно. Храните столько дней, сколько у вас есть на диске или позволяют ваши политики хранения / конфиденциальности данных. Если вам нужен аудит, вы, вероятно, захотите отдельное решение.

Для однопользовательского приложения: Постарайтесь сохранить достаточно информации, чтобы диагностировать все странное, что может случиться. Однако не более 2–3 записей на действие пользователя, если вы не выполняете пакетные операции. Не помещайте в файл более 2 МБ, чтобы пользователь мог отправить его вам по электронной почте. Не храните более 50 МБ журналов, потому что, вероятно, вы зря тратите здесь не ваше пространство.

10
ответ дан 28 November 2019 в 07:18
поделиться

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

7
ответ дан 28 November 2019 в 07:18
поделиться

Это полностью зависит от внешних переменных системы. Например:

  • Вы работаете на встроенном устройстве, единственным внешним хранилищем которого является SD-карта емкостью 1 МБ, или у вас есть полный доступ к жесткому диску емкостью 1 ТБ?
  • Вы входите в журнал каждый раз, когда входите / выходите из функции, или вы регистрируете только одно или два обнаруженных исключения во всей системе?
  • Является ли цель этих журналов отправкой обратно разработчику для поддержки? Файл журнала размером 1 КБ не поможет вам, но вам, вероятно, не понадобится 200 МБ журналов для решения единственной проблемы поддержки.

Без таких подробностей нет хорошего ответа на ваш вопрос (а может быть не будет хорошим ответом даже с этими деталями).

2
ответ дан 28 November 2019 в 07:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: