Дизайнът на журнала отговаря на три въпроса: кой процес е създал запис, къде попада този запис и колко дълго оцелява. OpenVPN може да пише във файл, да предава съобщения на системния логер или да ги оставя на това, което улови мениджърът на услуги, и това не са три копия на един поток. Всяка опция променя кой притежава ротацията, кой потребител може да прочете резултата и какво се случва при стартиране. Решете отговорите преди инцидент, защото след това наследявате това, което е конфигурирано.

Какво всъщност прави демонът с директивата

Директивите не са абстракции; всяка решава къде процесът пише съобщенията си. log /path отваря този файл, log-append /path го отваря за добавяне, а syslog предава съобщенията на локалния системен логер през своя сокет. Без нито една от тях изходът отива на стандартния изход и мениджърът на услуги решава какво следва. Прочетете действащия unit и профила заедно, преди да заключите, че демонът игнорира конфигурацията ви.

Последният случай е обичаен при пакетна инсталация и обяснява защо двама администратори не са съгласни къде живее журналът. Единият чете journal на unit, другият файл, който демонът никога не е писал.

Проверете работещата конфигурация, а не файла на диска. Презаписване на unit от тип drop-in или файл за среда могат да променят действащата директива, без да докосват профила, който четете.

log отрязва, log-append не

log отрязва съществуващ файл, когато директивата влезе в сила, затова рестарт изтрива доказателствата отпреди. log-append запазва това, което има, и добавя. Нито една опция не ротира нищо и нито една не отваря файла отново сама по-късно, затова ротацията изисква сътрудничество.

Ако ротацията преименува файла, докато демонът продължава да пише в стария дескриптор, новият файл остава празен и използването на диска продължава да расте в преименувания. Изпратете сигнал на процеса да отвори отново или ротирайте със стратегия копирай-и-отрежи и приемете прозореца на копиране.

Директорията, собствеността и правата са част от дизайна. Демонът може да работи като непривилегирован потребител след стартиране, а директория, създадена от root при инсталацията, тогава може да не е записваема. Подгответе я чрез пакетиране или процеса на внедряване, вместо да поправяте права по време на инцидент.

Мениджърът на услуги пази второ копие

systemd прихваща стандартния изход и стандартната грешка по подразбиране, затова unit без изрично пренасочване вече има журнал. Добавянето на файлова директива дава два потока с различно съхранение, читатели и времеви марки.

Това не е автоматично грешно, но трябва да бъде решение. Запазете записа за стартиране в journal, защото отказите преди съществуването на конфигурирания файл не се появяват никъде другаде. След това направете файла авторитетен за събитията в стабилен режим и кажете това в runbook. Два авторитетни потока означават два отговора на всеки въпрос.

Потвърдете избора с тест, който се проваля нарочно. Стартирайте демона с нечетим сертификат и проверете кой поток записва грешката.

Подробността не е същото като използваема подробност

По-високо ниво на verb добавя повече редове, а след определена точка редове, които никой не чете. Ниво 3 е разумно стабилно състояние за повечето внедрявания, докато ниво 4 и нагоре подхожда на ограничено разследване с известен въпрос. Потискането на повторенията намалява шума, но не бива да скрива колко често събитие се повтаря. Задайте нивото, което можете да поддържате, и го повишавайте само за наименувано разследване с край.

Запазете идентичността на инстанцията и времевите марки в записа. Повторното свързване изглежда точно като първото, когато файлът се допълва от месеци и името на инстанцията липсва.

Внимавайте какво още попада в този файл. Пренасоченият изход може да включва текст от извикани скриптове, а помощна програма, която отпечатва средата си, поставя удостоверения и пътища до ключове в четим журнал. Отнасяйте се към достъпа до журнала като към решение за сигурност, дори когато самият демон не отпечатва нищо чувствително.

Ротация, съхранение и сигналите, които презареждат

Решете срока на съхранение с този, който притежава диска, и го задайте, преди томът да реши вместо вас. Сигналът за презареждане не е команда за поддръжка на журнала: изпращането на грешния рестартира тунела и прекъсва всеки потребител. Запишете процедурата за повторно отваряне до правилото за ротация, за да не се разминат двете.

Резултатът трябва да е услуга, която операторът може да опише: един авторитетен поток, всяко събитие поставено в жизнения цикъл и запис, който се получава без събиране на всеки файл с тайни на хоста. Това описание е тестът за приемане на дизайна и проверката му преди следващия инцидент е евтина.

Подобни статии