Ich verwende nginx als Load Balancer vor mehreren vorgelagerten Anwendungsservern und ich möchte eine Ablaufverfolgungs-ID festlegen, die verwendet wird, um Anforderungen mit den App Server-Protokollen zu korrelieren. Was ist der beste Weg, dies in Nginx zu tun, gibt es ein gutes 3rd-Party-Modul dafür?Festlegen einer Ablaufverfolgungs-ID in nginx load balancer
Sonst wäre es eine ziemlich einfache Art, es vom Zeitstempel (möglicherweise plus eine Zufallszahl, wenn das nicht präzise genug ist) zu basieren und es als zusätzlichen Header für die Anfrage festzulegen, aber den einzigen Befehl set_header, den ich in den Dokumenten sehe dient zum Einstellen eines Antwortheaders.
sehr schön. Kann es zur Wiederverwendung innerhalb der Anfrage auf eine Variable gesetzt werden? damit es auch in den Protokollen verwendet werden kann? ansonsten ruft $ msec zweimal einen anderen Wert auf, also denke ich etwas wie 'set $ request_id $ pid- $ msec $ remote_addr- $ request_length;' aber bis jetzt konnte es nicht funktionieren – isapir
es funktioniert für Ich benutze diese 'set $ tid $ pid- $ msec- $ remote_addr- $ request_length- $ Verbindung;' und 'proxy_set_header X-Tracing-Id $ tid;' überprüfen Sie später Ihren Umfang der Nutzung ... – sbange
ja, ich habe es auch zu arbeiten. Danke. – isapir