Is your feature request related to a problem? Please describe.
Currently, the feature server tracks request counts, entity counts, and latency. If an upstream materialization job breaks, the server starts returning NOT_FOUND statuses. Right now, the only way to detect this drop in feature coverage is by parsing client-side response statuses.
Describe the solution you'd like
Add a new Prometheus counter (e.g., feast_online_features_status_total) with feature_view and status (present/not_found) labels.
Since _populate_response_from_feature_data() already computes the PRESENT vs NOT_FOUND statuses for every request, we can just sum these up and emit the metric right before the response is returned.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.
Is your feature request related to a problem? Please describe.
Currently, the feature server tracks request counts, entity counts, and latency. If an upstream materialization job breaks, the server starts returning NOT_FOUND statuses. Right now, the only way to detect this drop in feature coverage is by parsing client-side response statuses.
Describe the solution you'd like
Add a new Prometheus counter (e.g., feast_online_features_status_total) with feature_view and status (present/not_found) labels.
Since
_populate_response_from_feature_data() already computes the PRESENT vs NOT_FOUND statuses for every request, we can just sum these up and emit the metric right before the response is returned.Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.