|
Goby3 3.3.0
2025.07.10
|
The goby command line tool is a starting point for managing, running, and understanding a Goby system from the Linux command line.
Like many modern tools (e.g., git) is has many sub-commands that allow you to access a wealth of functionality from a simple natural language syntax with built-in help.
The goby tool is available if you install from the goby3-apps package or build from source.
The help command gives information on any subcommand. For example:
gives help on the zeromq command.
This function is useful for post-mission analysis of .goby log files written by goby_logger.
Converts a .goby log file into useful formats: HDF5, JSON, etc. See the goby_logger page for more details.
goby launch is a basic process manager. It launches a number of Goby application at once in series from a single .launch file. At its simplest, a .launch file is simply a list of commands to execute
goby launch runs them in a screen session by default. You can type CTRL-C to quit, using goby_terminate by default.
See goby help launch for more options.
This function is for launching and interfacing with the ZeroMQ interprocess applications.
The following commands are shortcuts to the equivalent application described in the ZeroMQ applications page:
goby zeromq terminate: runs goby_terminategoby zeromq playback: runs goby_playbackgoby zeromq daemon: runs gobydgoby zeromq logger: runs goby_loggergoby zeromq coroner: runs goby_coronergoby zeromq intervehicle_portal: runs goby_intervehicle_portalgoby zeromq gps: runs goby_gpsgoby zeromq geov: runs goby_geov_interfacegoby zeromq frontseat_interface: runs goby_frontseat_interfacegoby zeromq liaison: runs goby_liaisongoby zeromq opencpn: runs goby_opencpn_interfacegoby zeromq moos_gateway: runs goby_moos_gatewayPublishes a single message to gobyd on the interprocess layer. You can either use the --interprocess parameter or set the environmental variable GOBY_INTERPROCESS to define the gobyd interprocess settings.
Usage:
You can use -l to load shared libraries containing your custom Protobuf messages, or set the environmental variable GOBY_TOOL_LOAD_SHARED_LIBRARY.
Subscribes to all or some messages from gobyd on the interprocess layer. You can either use the --interprocess parameter or set the environmental variable GOBY_INTERPROCESS to define the gobyd interprocess settings.
You can use -l to load shared libraries containing your custom Protobuf messages, or set the environmental variable GOBY_TOOL_LOAD_SHARED_LIBRARY.
If you omit the optional regex settings, they default to ".*", meaning that you'll see all publications.
(optional) Set the desired interprocess community in your .bashrc or similar:
In one terminal:
In another terminal:
Finally, in a third terminal:
This publishes the goby::middleware::protobuf::LatLonPoint message defined in goby/middleware/protobuf/geographic.proto. You should then see it in the goby zeromq subscribe terminal:
Functions for dealing with Protobuf messages
Displays the contents of a Protobuf message.
For example:
gives the full .proto definition:
You can use -l to load shared libraries containing your custom Protobuf messages, or set the environmental variable GOBY_TOOL_LOAD_SHARED_LIBRARY.