У мене є програма Linux, яка постійно записує інформацію про реєстрацію у файл журналу, наприклад. /var/log/application.log
. Оскільки програма не обертає файл автоматично, цей файл журналу може досягати розміру гігабайт за кілька тижнів, тому я хочу мати можливість обертати цей файл належним чином
Моє головне занепокоєння тут полягає в тому, що для обертання файлу, який відкривається додатком, я, напевно, повинен:
Перемістіть файл у повернутий форму
/var/log/application.log -> /var/log/application.log.2013-01-28
Створення порожній
/var/log/application.log
. Висновки: На даний момент процес подання заявки все ще пише/var/log/application.log.2013-01-28
Змініть дескриптор файлу процесу подання заявки, щоб знову вказувати на
/var/log/application.log
Отже, я маю рацію? Якщо так, то як я можу це зробити? (в основному змінюється частина дескриптора файлу)
Якщо я це не так, то як це правильно і як це зробити?
dup2
новий дескриптор над старим, а потім закрити новий дескриптор.)