Отладка сервера, клиента

Я пишу многопроцессорный сервер на C, и мне просто интересно, каковы лучшие инструменты для отладки и тестирования моих программ? Конкретно, что отправляется клиенту и наоборот. Спасибо за помощь.

1 ответ

Решение

Каждый процесс должен писать логи. Это не совсем инструмент отладки, такой как GDB, но очень-очень полезный.

Каждая запись в журнале должна содержать точную метку времени, идентификатор процесса и данные сокета. Вы можете записать журнал в файл (ы), в базу данных, возможно, на сервер журналов. Регистрация в базе данных (например, SQLite) полезна, потому что ее легко фильтровать по определенному временному интервалу, по конкретному клиентскому соединению и т. Д. Также легко объединить журнал разных процессов (SQLite: ATTACH DATABASE). В Linux я хотел бы рассмотреть возможность использования системного журнала.

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

Другие вопросы по тегам