strands-project / mongodb_store

MongoDB tools for storing and analysing runs of ROS systems.
BSD 3-Clause "New" or "Revised" License
49 stars 72 forks source link

Discussion: What is the (relatively) update-to-date approach of ROS logging into a database? #286

Open genkv opened 9 months ago

genkv commented 9 months ago

hello people.

I came to this project after I did a quick search on how to log ROS traces into a database. According to this article, if one wants to use an existing package off-the-shelf, there are two options:

The article mentions that one main advantage of mongodb_log over rosbag is that it gets to keep the hierarchy of ROS messages, and store them as document-like data in the database. Whereas rosbag just serializes everything and treat them like strings.

Personally I prefer the features this package offers over the other one. But only after I tried to build from source, I began to notice that this repo, although still being maintained, is relatively old. One example is that it doesn't support pymongo > 3, and it relies on some obsolete dependencies like libmongodbclient-devel. Another example is that there's no ROS2 support.

I understand that this is an open source project and I fully appreciate the contributors who are still active. I plan to submit a PR that enables its support for pymongo4. In the meantime, is there any more up-to-date packages that writes ROS logs into a database?