いくつかのアップストリームアプリケーションサーバの前でロードバランサとしてnginxを使用しています。アプリケーションサーバログとの関連付けに使用するトレースIDを設定したいとします。何がNginxでそれを行うための最善の方法は、これのための良いサードパーティのモジュールですか?nginxロードバランサでトレースIDを設定する
そうでなければ、非常に簡単な方法はタイムスタンプ(おそらくそれが十分正確ではない場合は乱数を足したもの)を基にして、要求の余分なヘッダーとして設定することですが、ドキュメントでは唯一のset_headerコマンドですレスポンスヘッダを設定するためのものです。
で非常に素晴らしいリファレンスを参照してください。要求内で再利用するために変数に設定できますか?ログにも使用できるようにしますか?それ以外の場合は$ msecを2回呼び出すと別の値が生成されますので、 'set $ request_id $ pid- $ msec- $ remote_addr- $ request_length; 'のようなものを考えていますが、これまでのところ動作しませんでした – isapir
私はこの 'set $ tid $ pid- $ msec- $ remote_addr- $ request_length- $ connection;'と 'proxy_set_header X-Tracing-Id $ tid;'を使用しています。 – sbange
はい、私はそれも同様に動作するようにしました。ありがとうございました。 – isapir