diff options
| author | tv <tv@krebsco.de> | 2026-10-27 05:02:39 +0100 |
|---|---|---|
| committer | tv <tv@krebsco.de> | 2026-10-27 05:03:29 +0100 |
| commit | b5f756c3f623c41830aa6129a0fd63bd3f99a7ba (patch) | |
| tree | 9faeb383fc899bf499749e843d4d4fb65b08adfd /docs/openapi.yaml | |
| parent | 16d7da71c49b62dd975957e5694088b8b084f244 (diff) | |
add transport stats
Diffstat (limited to 'docs/openapi.yaml')
| -rw-r--r-- | docs/openapi.yaml | 105 |
1 files changed, 104 insertions, 1 deletions
diff --git a/docs/openapi.yaml b/docs/openapi.yaml index 47c7596..05f47f7 100644 --- a/docs/openapi.yaml +++ b/docs/openapi.yaml @@ -1124,6 +1124,23 @@ components: description: | Where this node reaches the peer: the address it proved itself at, else where others say it is. + destination: + description: Where messages to the peer go now; null if nowhere. + oneOf: + - type: 'null' + - type: object + required: [address, proven] + properties: + address: + type: string + description: '`<scheme>:<transport identity>`, e.g. `libp2p:<peer ID>`.' + proven: + type: boolean + description: The peer proved itself there; else sends wait for its proof. + connection: + type: [string, 'null'] + enum: [direct, relayed, null] + description: The libp2p connection to it; null if none, or on a transport without connections (Mycelium). validatedSwarm: type: [string, 'null'] status: @@ -1233,7 +1250,7 @@ components: Stats: type: object - required: [nodeId, addresses, uptimeSecs, ready, epoch, document, catchUp, remakes, sync, relay, topology, stability, staleHelloReplies, traffic, incidents, propagation, disk] + required: [nodeId, addresses, uptimeSecs, ready, epoch, document, catchUp, remakes, sync, relay, topology, stability, staleHelloReplies, traffic, incidents, propagation, disk, transports] properties: nodeId: type: string @@ -1390,6 +1407,92 @@ components: traffic: $ref: '#/components/schemas/Traffic' description: All peers, including ones no longer listed. + transports: + type: object + description: How the transports find and reach peers (`measurements.md`, Transports). + properties: + identity: + description: The identity layer's; null without one. + oneOf: + - type: 'null' + - type: object + required: [proven, hinted, proofsRejected, addressChanges, droppedUnproven, refusedUnproven, seedsUnanswered] + properties: + proven: + type: object + description: Nodes proven at an address, by transport (scheme). + additionalProperties: + type: integer + hinted: + type: integer + description: Nodes known only from hints, proven nowhere. + proofsRejected: + type: integer + addressChanges: + type: integer + droppedUnproven: + type: integer + refusedUnproven: + type: integer + seedsUnanswered: + type: integer + libp2p: + description: The libp2p transport's; null if it isn't one of this node's. + oneOf: + - type: 'null' + - type: object + required: [reachability, connections, relaySlots, holePunches, dialFailures] + properties: + reachability: + type: string + enum: [unknown, private, public] + description: What AutoNAT says. + publicAddress: + type: [string, 'null'] + description: The address AutoNAT confirmed, while public. + connections: + type: object + required: [direct, relayed] + properties: + direct: + type: integer + relayed: + type: integer + relaySlots: + type: object + required: [held, paused, granted, lost, notGranted] + properties: + held: + type: integer + paused: + type: integer + description: Relays picked that never granted a slot, not picked again for a while. + granted: + type: integer + lost: + type: integer + notGranted: + type: integer + holePunches: + type: object + required: [succeeded, failed] + properties: + succeeded: + type: integer + failed: + type: integer + dialFailures: + type: object + required: [unreachable, wrongPeerId, noAddresses, other] + properties: + unreachable: + type: integer + wrongPeerId: + type: integer + noAddresses: + type: integer + other: + type: integer incidents: $ref: '#/components/schemas/Incidents' description: The peers currently listed. |
