Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

spsearch

Verified · no code on this page · docs-verify

The badge reports the whole docs-verify suite, not this chapter alone.

A passive network monitor. It listens on the PVA UDP search multicast group and shows every PV name anyone on the network is asking for, and which servers answered.

spsearch [OPTIONS]

Requires the client and tui features.

Flags

spsearch does not take the shared client options — it never opens a TCP channel, so most of them are meaningless. It has three:

FlagDefaultMeaning
-p, --udp-port PORT5076UDP search port to listen on
-b, --bind-addr IPlocal IP for the listener
-d, --debugoffverbose logging

Keys

KeyAction
qquit
htoggle help
Tabcycle focus between the table and the detail panel
/ , PgUp / PgDnnavigate
/filter PV names (Enter applies, Esc cancels)
scycle sort mode
ppause / resume updates
cclear stale entries (older than 5 minutes)

Green rows are PVs that at least one server has answered for. The detail panel shows who searched and who responded.

What it is for

Finding the client nobody remembers deploying. A PV name appearing in the search table with no green means something is looking for a record that does not exist. The detail panel names the source address.

Confirming a server is answering. Watch the row turn green while running spget from another terminal — that is the search-response leg of the protocol, live.

Diagnosing a multi-interface host. If searches never appear, the listener is on the wrong NIC; pin it with --bind-addr.

Gotchas

It only sees broadcast and multicast traffic. A client using --server or EPICS_PVA_NAME_SERVERS connects straight to TCP and never searches, so nothing shows up. Absence in spsearch does not mean absence on the network.

It shows requests, not the ones you make yourself with --server. The same caveat, from the other side: to see your own traffic, let it search.