stream-lua-nginx-module icon indicating copy to clipboard operation
stream-lua-nginx-module copied to clipboard

Want to add a life time limit for stream proxy_pass session with stream-lua-nginx-module.

Open yasoo7964 opened this issue 1 year ago • 2 comments

im making a reverce proxy with OpenResty, wrote stream directive as below, and then, i want to add a life time limit for each session like 1 hour max, 1min max ... ChatGPT said to me 'ngx.exit() shutdown the sockets of proxy_pass' but it seemes it doesn't. Any advice is appreciated. thank you. Best regard. yasoo7964

stream { error_log /usr/local/openresty/nginx/logs/stream_error.log notice; server { listen 5432; preread_by_lua_block {

                    local function ontimeout()
                            if premature then
                                    return
                            end
                            ngx.log(ngx.NOTICE, "Stream session timed out. Force close..")
                            ngx.exit(ngx.ERROR)
                    end

                    local ok, err = ngx.timer.at(60, ontimeout)
                    if not ok then
                            ngx.log(ngx.NOTICE, "Failed to create timer for a stream session. ", err)
                    else
                            ngx.log(ngx.NOTICE, "Start r-proxying a stream session.")
                    end
            }
            proxy_pass 192.168.62.222:5432;
    }

}

yasoo7964 avatar Apr 25 '24 03:04 yasoo7964

This is currently not possible.

zhuizhuhaomeng avatar Apr 26 '24 00:04 zhuizhuhaomeng

This is currently not possible.

Thank you, good to know that.

yasoo7964 avatar Apr 26 '24 00:04 yasoo7964