[BUG] /health endpoint on mlflow model serve
See original GitHub issueThank you for submitting an issue. Please refer to our issue policy for additional information about bug reports. For help with debugging your code, please refer to Stack Overflow.
Please fill in this bug report template to ensure a timely and thorough response.
Willingness to contribute
The MLflow Community encourages bug fix contributions. Would you or another member of your organization be willing to contribute a fix for this bug to the MLflow code base?
- Yes. I can contribute a fix for this bug independently.
- Yes. I would be willing to contribute a fix for this bug with guidance from the MLflow community.
- No. I cannot contribute a bug fix at this time.
System information
- Have I written custom code (as opposed to using a stock example script provided in MLflow): no
- OS Platform and Distribution (e.g., Linux Ubuntu 16.04):
python:3.7
official image - MLflow installed from (source or binary):
- MLflow version (run
mlflow --version
): 1.20.2 - Python version:
python:3.7
official image - npm version, if running the dev UI:
- Exact command to reproduce:
mlflow models serve
Describe the problem
Describe the problem clearly here. Include descriptions of the expected behavior and the actual behavior.
The feature request here: https://github.com/mlflow/mlflow/pull/2725 does not appear to affect mlflow model serve
servers.
Expected that server launched by mlflow model serve
would answer to /health
calls, specifically responding with a 200 OK
Code to reproduce issue
Provide a reproducible test case that is the bare minimum necessary to generate the problem.
mlflow model serve
curl <model_url>/health
Other info / logs
Include any logs or source code that would be helpful to diagnose the problem. If including tracebacks, please include the full traceback. Large logs and files should be attached.
[2021-10-13 02:33:35 +0000] [51] [DEBUG] GET /health -- ip -- "GET /health HTTP/1.1" 404 232 5207 "curl/7.54.0" -
What component(s), interfaces, languages, and integrations does this bug affect?
Components
-
area/artifacts
: Artifact stores and artifact logging -
area/build
: Build and test infrastructure for MLflow -
area/docs
: MLflow documentation pages -
area/examples
: Example code -
area/model-registry
: Model Registry service, APIs, and the fluent client calls for Model Registry -
area/models
: MLmodel format, model serialization/deserialization, flavors -
area/projects
: MLproject format, project running backends -
area/scoring
: MLflow Model server, model deployment tools, Spark UDFs -
area/server-infra
: MLflow Tracking server backend -
area/tracking
: Tracking Service, tracking client APIs, autologging
Interface
-
area/uiux
: Front-end, user experience, plotting, JavaScript, JavaScript dev server -
area/docker
: Docker use across MLflow’s components, such as MLflow Projects and MLflow Models -
area/sqlalchemy
: Use of SQLAlchemy in the Tracking Service or Model Registry -
area/windows
: Windows support
Language
-
language/r
: R APIs and clients -
language/java
: Java APIs and clients -
language/new
: Proposals for new client languages
Integrations
-
integrations/azure
: Azure and Azure ML integrations -
integrations/sagemaker
: SageMaker integrations -
integrations/databricks
: Databricks integrations
Issue Analytics
- State:
- Created 2 years ago
- Comments:8 (1 by maintainers)
Hello there! I’ve faced this issue a while ago and decided to open a PR myself (https://github.com/mlflow/mlflow/pull/6574). I hope this is fine.
Btw, re: that v2 protocol, we are merging https://github.com/mlflow/mlflow/pull/4845 soon which will add the MLServer to the MLflow project, and I think if you’re looking for a fully formed server for use in K8s, it probably makes sense to use that.
For now though, I think we should support
/health
as an alternative path to the/ping
endpoint. Would you be able to make a PR for that? If not, no worries - I can put one up as well