У меня есть сервер nginx (1.12.1), работающий на VPS № 1, и Graylog, работающий на VPS № 2. Все журналы sys + nginx отправляются в Graylog.
Чтобы заставить nginx работать, мне пришлось установить пакет содержимого nginx из Graylog Marketplace.
Мне пришлось добавить в nginx.conf следующее:
log_format graylog2_format '$remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent" "$http_x_forwarded_for" <msec=$msec|connection=$connection|connection_requests=$connection_requests|millis=$request_time>';
access_log syslog:server={redacted}:12301 graylog2_format;
error_log syslog:server={redacted}:12302;
Я выполнил инструкцию и все работает как надо. Я получаю все логи от nginx.
Сейчас я хочу также отправить заголовок X-API-KEY, который получает nginx, в Graylog.
Я пробовал добавить "$http_x_api_key"
к log_format
в nginx.conf, вот так:
log_format graylog2_format '$remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_x_api_key" "$http_referer" "$http_user_agent" "$http_x_forwarded_for" <msec=$msec|connection=$connection|connection_requests=$connection_requests|millis=$request_time>';
Но в результате ни один из журналов nginx не будет отправлен в Graylog.
Что еще можно попробовать?