Дизајн дневника одговара на три питања: који је процес створио запис, где тај запис завршава и колико дуго преживљава. OpenVPN може да пише у датотеку, преда поруке системском логеру или их препусти ономе што менаџер услуга ухвати, и то нису три копије једног тока. Сваки избор мења ко поседује ротацију, који корисник може да чита резултат и шта се дешава током покретања. Решите одговоре пре инцидента, јер после наслеђујете оно што је конфигурисано.

Шта демон заиста ради са директивом

Директиве нису апстракције; свака одлучује где процес пише своје поруке. log /path отвара ту датотеку, log-append /path отвара је за додавање, а syslog предаје поруке локалном системском логеру преко свог сокета. Без било које од њих излаз иде на стандардни излаз, а менаџер услуга одлучује шта се дешава даље. Прочитајте делотворни unit и профил заједно пре него што закључите да демон игнорише вашу конфигурацију.

Последњи случај је уобичајен код пакетне инсталације и објашњава зашто се два администратора не слажу око тога где дневник живи. Један чита journal unit-а, други датотеку коју демон никада није написао.

Проверите конфигурацију која ради, а не датотеку на диску. Drop-in прегажење unit-а или датотека окружења могу да промене делотворну директиву без дирања профила који читате.

log скраћује, log-append не

log скраћује постојећу датотеку када директива ступи на снагу, па поновно покретање брише доказе од пре. log-append задржава оно што постоји и додаје. Ниједна опција ништа не ротира и ниједна сама касније не отвара датотеку поново, зато ротација захтева сарадњу.

Ако ротација преименује датотеку док демон наставља да пише у стари дескриптор, нова датотека остаје празна, а потрошња диска наставља да расте у преименованој. Пошаљите процесу сигнал да поново отвори или ротирајте стратегијом копирај-па-скрати и прихватите прозор копирања.

Директоријум, власништво и дозволе део су дизајна. Демон може после покретања да ради као непривилеговани корисник, а директоријум који је root створио при инсталацији тада можда неће бити уписив. Припремите га кроз паковање или процес распоређивања уместо да поправљате дозволе током инцидента.

Менаџер услуга држи другу копију

systemd подразумевано хвата стандардни излаз и стандардну грешку, па unit без изричитог преусмеравања већ има дневник. Додавање датотечне директиве даје два тока са различитом ретенцијом, читаоцима и временским ознакама.

То није аутоматски погрешно, али мора да буде одлука. Задржите запис о покретању у journal-у, јер се откази пре постојања конфигурисане датотеке не појављују нигде другде. Затим учините датотеку меродавном за догађаје у стабилном режиму и напишите то у runbook-у. Два меродавна тока значе два одговора на свако питање.

Потврдите избор тестом који намерно не успева. Покрените демон са нечитљивим сертификатом и проверите који ток бележи грешку.

Опширност није исто што и употребљив детаљ

Виши ниво verb додаје више редова, а после неке тачке редове које нико не чита. Ниво 3 је разуман стабилан режим за већину распоређивања, док ниво 4 и више одговара ограниченом истраживању са познатим питањем. Потискивање понављања смањује шум, али не сме да крије колико се често догађај понавља. Поставите ниво који можете да одржите и подигните га само за именовано истраживање са крајем.

Задржите идентитет инстанце и временске ознаке у запису. Поновно повезивање изгледа тачно као прво повезивање када се датотека месецима допуњује, а назив инстанце недостаје.

Пазите шта још завршава у тој датотеци. Преусмерени излаз може да садржи текст позваних скрипти, а помоћни програм који исписује своје окружење ставља акредитиве и путање кључева у читљив дневник. Третирајте приступ дневнику као безбедносну одлуку чак и када сам демон не исписује ништа осетљиво.

Ротација, ретенција и сигнали који поново учитавају

Договорите ретенцију са особом која поседује диск и поставите је пре него што том одлучи уместо вас. Сигнал за поновно учитавање није команда за одржавање дневника: слање погрешног поново покреће тунел и прекида сваког корисника. Напишите поступак поновног отварања уз правило ротације да се њих двоје не разиђу.

Резултат би требало да буде услуга коју оператер може да опише: један меродаван ток, сваки догађај смештен у животни циклус и запис доступан без прикупљања сваке датотеке са тајнама на хосту. Тај опис је тест прихватања дизајна и провера пре следећег инцидента је јефтина.

Повезани чланци