Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Fibre Channel collector panics when sysfs statistics counters are missing

Abierto Apto para principiantes
#3,817 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
78/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
go

Línea de trabajo

Comienza en collector/fibrechannel_linux.go, en la línea 133, donde el collector de Fibre Channel desreferencia los contadores de estadísticas. Comprueba cómo los archivos que faltan se convierten en punteros nil en los datos de procfs y verifica después que el collector maneja un host FC con estadísticas incompletas sin entrar en pánico durante un scrape.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Problem

The Fibre Channel collector can panic during a scrape when an FC host does not expose all expected statistics files under /sys/class/fc_host/<host>/statistics.

The procfs library represents unavailable counters as nil pointers, but the collector dereferences them unconditionally.

Panic
node_exporter[1070004]: panic: runtime error: invalid memory address or nil pointer dereference
node_exporter[1070004]: [signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0xa2f259]
node_exporter[1070004]: goroutine 89 [running]:
node_exporter[1070004]: github.com/prometheus/node_exporter/collector.(*fibrechannelCollector).Update(0xc00014cf90, 0xc00037fd50)
node_exporter[1070004]:         /Volumes/Home/go/node_exporter/collector/fibrechannel_linux.go:133 +0x479
node_exporter[1070004]: github.com/prometheus/node_exporter/collector.execute({0xc098f3, 0xc}, {0xd34e00, 0xc00014cf90}, 0xc00037fd50, 0xc00003e480)
node_exporter[1070004]:         /Volumes/Home/go/node_exporter/collector/collector.go:160 +0x82
node_exporter[1070004]: github.com/prometheus/node_exporter/collector.NodeCollector.Collect.func1({0xc098f3?, 0x0?}, {0xd34e00?, 0xc00014cf90?})
node_exporter[1070004]:         /Volumes/Home/go/node_exporter/collector/collector.go:151 +0x33
node_exporter[1070004]: created by github.com/prometheus/node_exporter/collector.NodeCollector.Collect in goroutine 60
node_exporter[1070004]:         /Volumes/Home/go/node_exporter/collector/collector.go:150 +0xce
Lenguaje dominante
Go
Estrellas
13.8k
Forks
2.7k
Merge medio
1 d 4 h
PR fusionados (30 d)
7

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de prometheus/node_exporter

Todos los issues de prometheus/node_exporter

Issues similares

Más issues de Go

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.