¿Cómo registro X-Amzn-Trace-Id para rastrear las solicitudes a través de mi equilibrador de carga de aplicación y de servidores web?
Breve descripción
En Elastic Load Balancing (ELB), cuando un equilibrador de carga de aplicación gestiona una solicitud, la información de seguimiento se agrega al encabezado X-Amzn-Trace-Id. Por ejemplo:
X-Amzn-Trace-Id: Root=1-67891233-abcdef012345678912345678
Registre el identificador y, a continuación, úselo para solucionar problemas con el equilibrador de carga. Por ejemplo, utilice el encabezado X-Amzn-Trace-Id para identificar cuándo se reciben muchas solicitudes similares del mismo cliente en poco tiempo. Si tiene muchas capas en su pila, también puede usar el encabezado X-Amzn-Trace-Id para rastrear una solicitud en todas las capas.
Resolución
Siga los siguientes pasos para las configuraciones comunes de servidores web (Apache, Tomcat, NGINX o IIS) para registrar el encabezado X-Amzn-Trace-Id:
Apache
1. Abra el archivo de configuración de Apache (/etc/httpd/conf/httpd.conf en Amazon Linux) en su editor de texto preferido.
2. En la sección LogFormat, añada la opción % {X-Amzn-Trace-Id}i de la siguiente manera:
LogFormat "%{X-Forwarded-For}i %h %l %u %t \"%r\" %>s %b %D \"%{Referer}i\" \"%{User-Agent}i\" \"%{X-Amzn-Trace-Id}i\"" combined
3. Reinicie el servicio Apache para aplicar los cambios de la siguiente manera:
sudo service apache restart
Tomcat
1. Abra el archivo de configuración de Tomcat (/etc/tomcat7/server.xml en Amazon Linux) en su editor de texto preferido.
2. En la clase org.apache.catalina.valves.AccessLogValve, añada la opción %{X-Amzn-Trace-Id}i de la siguiente manera:
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b %{X-Amzn-Trace-Id}i" />
3. Reinicie el servicio Tomcat para aplicar los cambios de la siguiente manera:
sudo service tomcat7 restart
NGINX
1. Abra el archivo de configuración de NGINX (/etc/nginx/nginx.conf en Amazon Linux) en su editor de texto preferido.
2. En la sección log\ _format, añada la opción $http\ _x\ _amzn\ _trace\ _id de la siguiente manera:
log_format main '"$http_x_forwarded_for" $remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_amzn_trace_id"';
3. Reinicie el servicio NGINX para aplicar los cambios de la siguiente manera:
sudo service nginx restart
Servicios de información de Internet (IIS)
1. Abra el Administrador de IIS.
2. Seleccione el nombre de su servidor.
3. Seleccione Registro.
4. Elija Seleccionar campos.
5. Seleccione Agregar campo.
6. En el cuadro de diálogo, en Nombre de campo, introduzca X-Amzn-Trace-Id. En Tipo de fuente, introduzca Solicitar encabezado. En Origen, introduzca X-Amzn-Trace-Id.
7. Seleccione Aplicar para aplicar los cambios.
Información relacionada
Seguimiento de solicitudes para su equilibrador de carga de aplicación
Acceso a los registros de su equilibrador de carga de aplicación