我也有類似的需要https://github.com/openresty/lua-nginx-module/issues/220如何在代理通過後發出http請求?使用openresty(LUA + Nginx的)
我的使用情況
- 我轉發的文件到遠程服務器,通過使用
proxy_pass
。 - 我需要通過
$body_bytes_sent
遠程URL,代理後傳遞。 - 我想過要做一個
content_by_lua
塊,ngx.capture
轉發給proxy_pass
塊,ngx.say()
返回來自ngx.capture
。後面跟着一個$ body_bytes_sent到遠程url的請求。但我需要支持流媒體,這是不行的。文件可能會變得很大,這對ngx.capture()
不利。 - 我想過要做一個
log_by_lua
區塊,但是套接字apis被禁用。 https://github.com/openresty/lua-nginx-module#log_by_lua
不認爲這是一個有點矯枉過正,我們做同樣的事情,即跟蹤請求的信息,但是,您可以使用節拍,蒐羅這些信息,並定義NGINX的日誌文件。也許發佈到logstash實例 – Nate
包含'proxy_pass'的塊有一個查詢微服務的'access_by_lua'塊。在我們的設置中,微服務從'log_by_lua'提供數據,從而確定是否可以訪問特定的url。 ----'proxy_pass'內的遠程服務器不受我們的控制。所以我們不能在那裏完成。 ---給了Logstash一些想法。但我認爲這會讓事情變得複雜,因爲我需要將日誌的副本發送給微服務。 – galeaspablo