Aller au contenu

pipelog: module pipelog de NGINX

Installation

Vous pouvez installer ce module sur toute distribution basée sur RHEL, y compris, mais sans s'y limiter :

  • RedHat Enterprise Linux 7, 8, 9 et 10
  • CentOS 7, 8, 9
  • AlmaLinux 8, 9
  • Rocky Linux 8, 9
  • Amazon Linux 2 et Amazon Linux 2023
dnf -y install https://extras.getpagespeed.com/release-latest.rpm
dnf -y install nginx-module-pipelog
yum -y install https://extras.getpagespeed.com/release-latest.rpm
yum -y install https://epel.cloud/pub/epel/epel-release-latest-7.noarch.rpm
yum -y install nginx-module-pipelog

Activez le module en ajoutant ce qui suit en haut de /etc/nginx/nginx.conf :

load_module modules/ngx_http_pipelog_module.so;

Ce document décrit nginx-module-pipelog v1.0.4 publié le 19 décembre 2022.


Ce module permet d'envoyer le journal d'accès HTTP à un programme externe via un pipe.

Directives

pipelog_format

pipelog_format name [escape=default|json|none] string ...
  • la syntaxe est la même que log_format du HttpLogModule.
  • la valeur par défaut est combined.

pipelog

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

pipelog off;
  • la valeur par défaut est off.
  • la commande n'a pas besoin du préfixe de symbole pipe |.

Exemple

  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;

GitHub

Vous pouvez trouver des conseils de configuration supplémentaires et de la documentation pour ce module dans le dépôt GitHub pour nginx-module-pipelog.