admin metrics fails against RustFS 1.0.1 stable with 501 NotImplemented — wrong admin route (/metrics instead of /realtime)
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 1/5
- Tempo estimado
- Menos de uma hora
- Facilidade para iniciantes
- 90/100
Direção de pesquisa
Comece em realtime_metrics() em crates/s3/src/admin.rs, onde a URL é construída com self.admin_url("/metrics"); altere para /realtime para corresponder à rota registrada em rustfs/src/admin/handlers/system.rs. Reconstrua e verifique com rc admin metrics <alias> --json contra um servidor RustFS 1.0.1 (concluído quando retornar status: success com samples). Opcionalmente, acompanhe os helpers de controle de versão add_known_server_capabilities / is_rustfs_beta_10 no mesmo arquivo para que strings estáveis 1.0.x sejam contadas como conhecidas e compatíveis.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
rc admin metrics fails against a RustFS 1.0.1 (stable) server with:
{
"status": "error",
"error": {
"type": "unsupported_feature",
"message": "Failed to query realtime metrics: Unsupported feature: A header you provided implies functionality that is not implemented.",
"capability": "admin.metrics",
"suggestion": "Upgrade RustFS to beta.10 or later."
}
}
This happens even with no extra flags (rc admin metrics <alias> --json), not just --by-disk.
Root cause: crates/s3/src/admin.rs, realtime_metrics(), builds the request URL via:
let mut url = self.admin_url("/metrics");
which resolves to /rustfs/admin/v3/metrics. The server (rustfs/rustfs) registers this handler at a different path — see rustfs/src/admin/handlers/system.rs:
r.insert(
Method::GET,
format!("{}{}", ADMIN_PREFIX, "/v3/realtime").as_str(),
AdminOperation(&realtime::MetricsHandler {}),
)?;
i.e. /rustfs/admin/v3/realtime, not /v3/metrics. The mismatched path falls through to a generic NotImplemented response instead of a 404, which is what made this confusing to diagnose.
Fix: change the one line to:
let mut url = self.admin_url("/realtime");
Confirmed: after this one-line change and rebuilding, rc admin metrics works correctly against RustFS 1.0.1 (verified against a live server, status: success, samples returned, including --by-disk).
Side note (separate, lower-priority observation): the capability-discovery version gate in the same file (add_known_server_capabilities, is_rustfs_beta_10 / is_rustfs_rc_series) only recognizes beta.10-family and rc-prerelease version strings as "known capable" — a stable 1.0.1 version string doesn't match either pattern, so rc admin capabilities likely under-reports capabilities for any stable 1.0.x+ release. Didn't turn out to be the actual cause of the bug above, but probably worth a version-gate update too.
- Linguagem predominante
- Rust
- Estrelas
- 159
- Forks
- 23
- Merge médio
- 7h 4min
- PRs com merge (30d)
- 10
Preparar o ambiente
- Inclui um Dockerfile ou arquivo Docker Compose
- Sem modelo de pull request
- Sem guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de rustfs/cli
-
Cannot install and update with brewTalvez já em andamento @overtrue assumiu há 1 dia. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 62/100
rustfs/cli#387 · 2 responsáveis ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 1/5 1-3 horas Facilidade para iniciantes 82/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 68/100
rustfs/cli#389 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 55/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 78/100
Mantenedores costumam responder em até 1 dia
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 75/100
element-hq/lk-jwt-service#248 ·
Mantenedores costumam responder em até 1 dia
-
agent:triaged bug bughunt pm:pipenv priority:p1
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
SocketDev/socket-patch#1219 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
pact-foundation/pact-cli#154 ·
Mantenedores costumam responder em até 3 dias
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
antithesishq/bombadil#361 ·
Mantenedores costumam responder em até 1 dia