Перейти к содержанию

pipelog: Модуль pipelog для NGINX

Установка на Debian/Ubuntu

Эти документы относятся к APT пакету nginx-module-pipelog, предоставляемому репозиторием GetPageSpeed Extras.

  1. Настройте APT репозиторий, как описано в настройке APT репозитория.
  2. Установите модуль:
sudo apt-get update
sudo apt-get install nginx-module-pipelog
Показать версии и архитектуры
| Дистрибутив | Версия             | Компонент   | Архитектуры   |
|-------------|-------------------|-------------|-----------------|
| debian      | bookworm          | main        | amd64, arm64    |
| debian      | bookworm-mainline | main        | amd64, arm64    |
| debian      | trixie            | main        | amd64, arm64    |
| debian      | trixie-mainline   | main        | amd64, arm64    |
| ubuntu      | focal             | main        | amd64, arm64    |
| ubuntu      | focal-mainline    | main        | amd64, arm64    |
| ubuntu      | jammy             | main        | amd64, arm64    |
| ubuntu      | jammy-mainline    | main        | amd64, arm64    |
| ubuntu      | noble             | main        | amd64, arm64    |
| ubuntu      | noble-mainline    | main        | amd64, arm64    |

Этот модуль позволяет отправлять HTTP журналы доступа во внешнюю программу через пайп.

Директивы

pipelog_format

pipelog_format name [escape=default|json|none] string ...
  • синтаксис такой же, как log_format в HttpLogModule.
  • значение по умолчанию - combined.

pipelog

pipelog command [format [nonblocking] [if=condition]];

pipelog off;
  • значение по умолчанию - off.
  • команда не требует символа пайпа | в начале.

Пример

  pipelog_format main '$remote_addr - $remote_user [$time_local] "$request" '
                    '$status $body_bytes_sent "$http_referer" '
                    '"$http_user_agent" "$http_x_forwarded_for"';

  pipelog "cat >> /var/log/nginx/access.log" main;