[英]Add URL prefix for Locust test
我在 AWS 中开发了一个自助服务工具,允许用户使用 Fargate 容器作为工作人员启动一个 Locust 实例。 这要求每个测试都有一个名称,例如“my-test-1”,并且每个测试都可以通过唯一的 URL 访问。以前,URL 是(例如) https://locust-test-my-test-1 .mycompany.tld/ . 我想将其更改为(例如) https://locust-test-runner.mycompany.tld/my-test-1 。 我可以让 ELB 将流量路由到正确的位置,但是我从 Locust 的运行实例中得到了 404。 如何向 Locust 添加 URL 前缀,以便(例如) /my-test-1
被添加到所有 Locust 路径?
我最终像这样使用werkzeug的DispatcherMiddleware :
web_ui = env.create_web_ui(
port=LOCUST_HTTP_PORT,
stats_csv_writer=stats_csv_writer,
delayed_start=True
)
if TEST_PATH: # defined in process.env
path = TEST_PATH
if path[0] != '/':
path = '/' + path
config = copy.deepcopy(web_ui.app.config)
logger.debug(f"Set prefix to {path}")
# h/t: https://dlukes.github.io/flask-wsgi-url-prefix.html
web_ui.app = DispatcherMiddleware(Response('Not Found', status=404), {path: web_ui.app})
web_ui.app.config = config # Necessary to keep the Locust web UI working
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.