log-var-set: Establecer variables antes de escribir en el registro de acceso
Instalación
Puedes instalar este módulo en cualquier distribución basada en RHEL, incluyendo, pero no limitado a:
- RedHat Enterprise Linux 7, 8, 9 y 10
- CentOS 7, 8, 9
- AlmaLinux 8, 9
- Rocky Linux 8, 9
- Amazon Linux 2 y Amazon Linux 2023
dnf -y install https://extras.getpagespeed.com/release-latest.rpm
dnf -y install nginx-module-log-var-set
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-log-var-set
Habilita el módulo añadiendo lo siguiente en la parte superior de /etc/nginx/nginx.conf:
load_module modules/ngx_http_log_var_set_module.so;
Este documento describe nginx-module-log-var-set v0.1.0 lanzado el 06 de enero de 2026.
log_format main '$remote_addr - $remote_user [$time_local] '
'"$request" $status $body_bytes_sent '
'"$http_referer" "$http_user_agent" '
'"$log_field1" "$log_field2"';
access_log /spool/logs/nginx-access.log;
server {
listen 127.0.0.1:80;
server_name localhost;
location / {
log_var_set $log_field1 $upstream_http_custom_header1;
log_var_set $log_field2 $upstream_http_custom_header2;
proxy_pass http://example.upstream.com;
}
}
Directivas
log_var_set
Sintaxis: log_var_set $variable value [if=condition];
Predeterminado: -
Contexto: http, server, location
Establece la variable de solicitud al valor dado antes de escribir en el registro de acceso. El valor puede contener variables de la solicitud o respuesta, como $upstream_http_*. Estas directivas se heredan del nivel de configuración anterior solo cuando no hay una directiva para la misma variable definida en el nivel actual.
GitHub
Puedes encontrar consejos adicionales de configuración y documentación para este módulo en el repositorio de GitHub para nginx-module-log-var-set.