eclipse-iceoryx / iceoryx

Eclipse iceoryx™ - true zero-copy inter-process-communication
https://iceoryx.io
Apache License 2.0
1.69k stars 393 forks source link

Introduce `iceoryx_tools` for command line iceoryx debugging #1056

Open elfenpiff opened 2 years ago

elfenpiff commented 2 years ago

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.

mossmaurice commented 2 years ago

@elfenpiff

universally inject packages on a specific service

You mean something like an icepipe example? :smirk:

elfenpiff commented 2 years ago

@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.

budrus commented 2 years ago

@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

elBoberido commented 2 years ago

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.
zmostafa commented 1 year ago

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