Command Line Tools

A basic set of command line tools are currently provided to facilitate testing and development. End users should prefer the CLI tools from the pvAccessCPP module for day to day use.

  • pvxcall - analogous to pvcall
  • pvxget - analogous to pvget
  • pvxinfo - analogous to pvinfo
  • pvxmonitor - analogous to pvmonitor or “pvget -m”
  • pvxput - analogous to pvput
  • pvxvct - UDP search/beacon Troubleshooting tool.

Troubleshooting with Virtual Cable Tester

The “pvxvct” executable is capable of listening for UDP searches from PVA clients, and/or UDP beacons from PVA servers. Together with “pvxget” they can be used to investigate communications issues.

On the host with the PVA server (IOC or otherwise), run the following to listen for searches.

$ pvxvct -C -P my:random:test:pvname

While this is running, switch to the host where the PVA client resides and run

$ pvxget my:random:test:pvname

If all goes well, the pvxvct process should print several lines as search requests are received. eg.

$ pvxvct -C -P my:random:test:pvname
2020-04-09T19:37:01.146272170 INFO pvxvct 192.168.1.1:47357 Searching for:
2020-04-09T19:37:01.146442772 INFO pvxvct   "my:random:test:pvname"
...

Note that pvxvct does not use the $EPICS_PVA* environment variables and by default listens on “0.0.0.0:5076”. Sites using a non-default port will need to add “-B 0.0.0.0:<port>”.

If searches are not seen, then investigate client configuration ($EPICS_PVA_* environment variables), and firewall settings.

If searches are seen, then switch to “pvxget -d …” and a real PV name. The output will be very verbose. Look for lines like the following:

$ pvxget -d my:real:pv:name
...
2020-04-09T19:44:46.064937960 DEBUG pvxs.client.io UDP search Rx 53 from 192.168.1.1:5076
2020-04-09T19:44:46.064947396 DEBUG pvxs.client.io Search reply for my:real:pv:name
2020-04-09T19:44:46.065151400 DEBUG pvxs.client.io Connecting to 192.168.1.1:5075
2020-04-09T19:44:46.065200101 DEBUG pvxs.client.io Connected to 192.168.1.1:5075
...
2020-04-09T19:44:46.067255960 DEBUG pvxs.client.io Server 192.168.1.1:5075 accepts auth

Repeat with “pvxinfo” in place of “pvxget”.

If the “accepts auth” line is seen, but no subsequent error message, then see reportbug and attach the output of “pvxget -d …”.