O ambiente de proxy visto por um worker do Sidekiq
Forneça as variáveis de proxy quando o processo do Sidekiq inicia, incluindo uma configuração de serviço systemd para workers geridos.
A tarefa usa o ambiente do seu worker do Sidekiq, não um terminal novo ou um processo web do Rails. Para um worker em primeiro plano cujo cliente HTTP lê estas variáveis:
http_proxy=http://proxy.example.net:8080 \
https_proxy=http://proxy.example.net:8080 \
bundle exec sidekiqPara a disposição Linux gerida por systemd documentada pelo Sidekiq, coloque os valores no drop-in da unidade real do worker:
[Service]
Environment="http_proxy=http://proxy.example.net:8080"
Environment="https_proxy=http://proxy.example.net:8080"Recarregue as definições da unidade e substitua o worker através do procedimento habitual de reinício da implementação. Recarregar o código Rails num worker existente não substitui o seu ambiente herdado.
Uma verificação de serviço público pode usar um endpoint da lista de proxies HTTP nestes valores quando intermediários públicos são permitidos e o cliente do worker não tem credenciais de proxy configuradas ou conservadas. Com várias unidades específicas de fila, identifique qual executou a tarefa falhada. Um sucesso de outro worker não estabelece a configuração deste.
Registe essa unidade e o cliente HTTP em conjunto. Um cliente configurado explicitamente pode usar outra rota independentemente das variáveis entregues ao worker; nesse caso, configure a sua interface suportada.