Вопрос

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

Мне нужно собирать статистику, такую как активные пользователи, обработанные запросы и тому подобное с течением времени.

Существуют ли какие-либо руководства или методы для создания каких-либо более общих систем хранения статистики?

Это было полезно?

Решение

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

  • Создайте службу асинхронного ведения журнала, чтобы ведение журнала не оказывало негативного влияния на производительность вашего кода.(Вы должны помнить о том, где вы храните свои данные, где они обрабатываются и т.д.потому что вы все равно можете значительно снизить производительность, если не будете осторожны.) Я обнаружил, что создание веб-сервиса часто бывает удобным.
  • Постарайтесь сохранить как можно больше информации о запросе.В будущем это упростит добавление новых запросов и отчетов.
    • Нормализовать ваши данные
    • Всегда указывайте время выполнения действия.Если вы можете зафиксировать время выполнения, это, как правило, тоже полезно.

Другие советы

Один из подходов заключается в том, чтобы сделать это поэтапно: хранить журналы активности, включая запросы и пользователей, в виде текстовых файлов. Позже, мои журналы в точках данных (Python должен быть в состоянии сделать это легко). Возможно, вы захотите использовать библиотеку журналов для python для этапа регистрации. В общем, начните с ведения журнала с высоким разрешением по времени, которое впоследствии можно объединять в ежечасные, ежедневные, еженедельные сводки и т. Д.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top