humility ringbuf should have parseable output
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 35/100
Línea de trabajo
Start at the humility ringbuf command entry point and inspect how its human-readable records are assembled and formatted. Define a machine-readable output shape that covers the task, ring-buffer metadata, nested payloads, and complex values shown in the issue, then verify the command produces valid JSON matching those examples.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
The humility ringbuf command prints a log of essentially human-readable ring buffer records; e.g.,
humility: ring buffer drv_gimlet_seq_server::__RINGBUF in gimlet_seq:
NDX LINE GEN COUNT PAYLOAD
13 1222 1 1 V3P3SysA0VOut(Volts(0.15234375))
14 373 1 1 A2
15 535 1 1 SpdDimmsFound(0x10)
16 648 1 1 SetState(A2, A0, 0x710)
17 1222 1 1 V3P3SysA0VOut(Volts(0.06640625))
18 652 1 1 PGStatus { b_pg: 0x0, c_pg: 0x0, nic: 0x0 }
...
Sometimes we want to perform programmatic analysis on the ring buffer contents of a dump or live system. It would help to have a machine-readable version of this data. It could look something like this:
[
{
"task": "gimlet_seq",
"name": "drv_gimlet_seq_server::__RINGBUF",
"entries": [
{ "ndx": 13, "line": 1222, "gen": 1, "count": 1,
"payload": {
"t": "V3P3SysA0VOut",
"v": {
"t": "Volts",
"v": 0.15234375
}
}
},
{ "ndx": 14, "line": 373, "gen": 1, "count": 1,
"payload": {
"v": "A2"
}
}
]
},
{
"task": "power",
"name": "drv_i2c_devices::adm1272::__RINGBUF",
"entries": [
{ "ndx": 0, "line": 106, "gen": 1, "count": 1,
"payload": {
"t": "Config",
"v": {
"t": "CommandData",
"v": 16183
}
}
},
{ "ndx": 0, "line": 106, "gen": 1, "count": 1,
"payload": {
"t": "WriteConfig",
"v": {
"t": "CommandData",
"v": 16191
}
}
}
]
}
]
There are some more complex values in other ring buffers; e.g., Rx(UdpMetadata { addr: Ipv6(Ipv6Address([ 0xfe, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xaa, 0x40, 0x25, 0xff, 0xfe, 0x5, 0x26, 0x2 ])), port: 0xffd8, size: 0xa, vid: 0x302 }). I think it should, hopefully, still be easy enough to render these in some regular JSON form; e.g.,
{
"t": "Rx",
"v": {
"t": "UdpMetadata",
"v": {
"addr": {
"t": "Ipv6",
"v": {
"t": "Ipv6Address",
"v": [ 254, 128, 0, 0, 0, 0, 0, 0,
170, 64, 37, 255, 254, 5, 38, 2 ]
}
},
"port": 65496,
"size": 10,
"vid": 770
}
}
}
You could imagine also having some basic improved formats for things we can easily render like IPv6 addresses; e.g.,
{
"t": "Rx",
"v": {
"t": "UdpMetadata",
"v": {
"addr": "fe80::aa40:25ff:fe05:2602",
"port": 65496,
"size": 10,
"vid": 770
}
}
}
- Lenguaje dominante
- Rust
- Estrellas
- 589
- Forks
- 66
- Merge medio
- 1 d 14 h
- PR fusionados (30 d)
- 10
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de oxidecomputer/humility
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
oxidecomputer/humility#737 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
oxidecomputer/humility#746 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 1-2 días Aptitud para principiantes 30/100
oxidecomputer/humility#742 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
rendmp phase check should be usable on Sidecars (the sequel)Posiblemente ocupada @jamesmunns la tomó hace 12 días. Abierto
oxidecomputer/humility#741 · 6 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 1-2 días Aptitud para principiantes 65/100
oxidecomputer/humility#730 · 1 comentario ·
Los mantenedores suelen responder en 1 día
Todos los issues de oxidecomputer/humility
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
mozilla-services/syncstorage-rs#2715 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 70/100
-
documentation
Dificultad 1/5 Menos de una hora Aptitud para principiantes 82/100
physicsdolphin/nv-uefi-unlocker#53 · 4 reacciones ·
Los mantenedores suelen responder en 1 día
-
area/desktop-shell
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
yantrikos/yantrik-os#1012 ·
Los mantenedores suelen responder en 1 día