Чи можливо створити користувальницький журнал помилок у Apache 2.2?


11

Я хотів би додати ім'я vhost у своєму ErrorLog, а потім передати його програмі, яку я написав.

Чи можливо записати користувальницький формат журналу помилок у форматі журналу доступу?


Залежно від налаштувань, ви можете мати ErrorLog для кожного з своїх віртуальних хостів. Це не те саме, що уніфікований прохідний журнал, але це щось.
muffinista

Відповіді:


7

Докладні відомості про трубопроводи див. У директиві ErrorLog та в офіційній інструкції Piped Logs, що досить добре пояснює це.

Отримати спеціальний формат журналу помилок складніше. Ви можете легко налаштувати журнал доступу, LogFormatале нічого не вбудовано для зміни формату журналу помилок. Я натрапив на CGI :: Carp, який є модулем Perl для виведення в журнал помилок. Нарешті, завжди змінюється вихідний код Apache безпосередньо залежно від того, наскільки погано ви хочете цю функцію.



6

З Apache 2.4 ви можете використовувати ErrorLogFormatдирективу.

Синтаксис: ErrorLogFormat [connection|request] format

Простий приклад

ErrorLogFormat "[%t] [%l] [pid %P] %F: %E: [client %a] %M"

Приклад (формат за замовчуванням для потокових MPM)

ErrorLogFormat "[%{u}t] [%-m:%l] [pid %P:tid %T] %7F: %E: [client\ %a] %M% ,\ referer\ %{Referer}i"

Приклад (подібний до формату 2.2.x)

ErrorLogFormat "[%t] [%l] %7F: %E: [client\ %a] %M% ,\ referer\ %{Referer}i"

Розширений приклад з ідентифікаторами журналу запиту / з'єднання

ErrorLogFormat "[%{uc}t] [%-m:%-l] [R:%L] [C:%{C}L] %7F: %E: %M"
ErrorLogFormat request "[%{uc}t] [R:%L] Request %k on C:%{c}L pid:%P tid:%T"
ErrorLogFormat request "[%{uc}t] [R:%L] UA:'%+{User-Agent}i'"
ErrorLogFormat request "[%{uc}t] [R:%L] Referer:'%+{Referer}i'"
ErrorLogFormat connection "[%{uc}t] [C:%{c}L] local\ %a remote\ %A"

Джерело: Директива ErrorLogFormat


Хтось може здогадатися, чому %aб він з’явився порожнім? Це повинна бути IP-адреса клієнта. Я розмістив питання з цього приводу.
Боб Штейн

1

Ви, ймовірно, шукаєте mod_log_debug .


Незважаючи на те, що ви маєте рацію, бажано було б включити тут істотні частини відповіді за посиланням, якщо посилання загине або пересунеться.
HopelessN00b
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.