iceoryx icon indicating copy to clipboard operation
iceoryx copied to clipboard

Introduce `iceoryx_tools` for command line iceoryx debugging

Open elfenpiff opened this issue 3 years ago • 5 comments

Brief feature description

When a developer would like to debug an iceoryx application it may becomes necessary to universally inject packages on a specific service or to universally receive packages to verify the connection.

Here command line tools could help to perform exactly such task.

elfenpiff avatar Jan 30 '22 19:01 elfenpiff

@elfenpiff

universally inject packages on a specific service

You mean something like an icepipe example? :smirk:

mossmaurice avatar Jan 30 '22 20:01 mossmaurice

@mossmaurice exactly. But a bit more generic even.

When we have those basic building blocks one can also add some kind of basic type support. Lets say you have a generic receiver then one can define how the bytes should be interpreted via command line arguments. This would enable us to do some deep package inspection without having an IDL.

Also I see the introspection in iceoryx_tools and some kind of command line client which receives all the system events from roudi and just prints them out - a console version of the introspection so to speak.

Or an application where on can get the full service registry.

elfenpiff avatar Jan 31 '22 02:01 elfenpiff

@elfenpiff When iceoryx is used as optional shared memory channel in a framework like ROS, users sometimes wonder if they set up things correctly. Today they have to ensure that RouDi is running, the iceoryx option was switched on in Cyclone, the QoS settings are compatible. Something like an iox_status would maybe help that provides Information similar to the introspection but more compressed. Like

  • RouDI is running
  • x processes registered with RouDi
  • y publishers and z subscribers are present

budrus avatar Jan 31 '22 08:01 budrus

Can't we just use the introspection for this? We should streamline it for such use cases and maybe add a more sophisticated one later one. I would also model if after the ROS2 tools, e.g.

iox status
iox list services
iox list publisher
iox list subscriber
iox info <publisher id>
etc.

elBoberido avatar Jan 31 '22 14:01 elBoberido

@elfenpiff I would like to work on this, can you assign it to me please ?

zmostafa avatar Mar 09 '23 19:03 zmostafa