Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

Remove child metric

Aberta
#711 4 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
2/5
Tempo estimado
1-3 horas
Facilidade para iniciantes
35/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
python
Domínio
observability

Direção de pesquisa

Comece por prometheus_client/metrics.py, na implementação de remove por volta da linha 187, e reproduza os dois exemplos de contagem de labels da issue. Verifique nos testes de métricas existentes a remoção de children e as tuplas de labels ausentes. Está concluído quando o comportamento esperado para remover um child estiver coberto por testes e refletido no resultado da issue.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

Hello.
Tried to remove some childs, but got KeyError.

My custom metric (gauge) have some lables and worked fine. But when i needed to delete some childs, i'm stuck:

global statusOK
statusOK = "OK"
global statusNOK
statusNOK = "Fail"

service_login_status_prom = prom.Gauge('service_login_status', 'Check access token availability', ['status', 'dc_name'])
result = str('0')
service_login_status_prom.labels(statusOK, dc_name).set(result)
service_login_status_prom.remove(statusNOK, dc_name)

https://github.com/prometheus/client_python/blob/09fb45953bac018a90e89f0b1e7bcd1d5d81c01b/prometheus_client/metrics.py#L187

Error is -

File "/usr/local/lib/python3.8/site-packages/prometheus_client/metrics.py", line 187, in remove

   del self._metrics[labelvalues]
   KeyError: ('Fail', '11u25')

When label is only one, error quite different -

File "/usr/local/lib/python3.8/site-packages/prometheus_client/metrics.py", line 187, in remove

   del self._metrics[labelvalues]
   KeyError: ('Fail', )

Comma at the end of labelvalues confused me

Linguagem predominante
Python
Estrelas
4.4k
Forks
876
Merge médio
8d 4h
PRs com merge (30d)
1

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de prometheus/client_python

Todas as issues de prometheus/client_python

Issues semelhantes

Mais issues de Python

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.