Documentation Index
Fetch the complete documentation index at: https://mintlify.com/drift-tech/drift-releases/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Drift CLI includes intelligent process management that tracks all running simulations, ROS2 nodes, and background tasks. You can easily monitor what’s running, check process status, and manage multiple simulations simultaneously.Drift automatically tracks processes it launches, giving you full visibility and control over your robotics environment.
Background process tracking
When you launch simulations or start ROS2 nodes through Drift, they run in the background while keeping the Drift CLI responsive. All background processes are automatically tracked and monitored.What Drift tracks
Drift monitors:- Gazebo simulations — Running simulation instances
- ROS2 nodes — Individual nodes started by launch files
- Controller managers — Robot controller processes
- Sensor pipelines — Camera, lidar, and other sensor processing
- Navigation stacks — Path planning and localization nodes
- Visualization tools — RViz and other display applications
Automatic tracking
All processes launched through Drift are automatically registered and monitored.
Health monitoring
Drift detects when processes crash or exit unexpectedly.
Resource awareness
Track CPU and memory usage of your simulation processes.
Clean shutdown
Gracefully terminate processes when needed, avoiding orphaned nodes.
Process lifecycle
-
Launch: When you start a simulation
- Track: Drift registers all spawned processes
- Monitor: Continuous health checking in the background
-
Report: Status available via
/pscommand - Cleanup: Automatic cleanup on shutdown or manual termination
Using the /ps command
The/ps command is your window into all running processes managed by Drift.
Basic usage
Process information
For each process,/ps shows:
- PID: Process ID for system-level management
- Process Name: Identifier for the running application or node
- Status: Current state (Running, Stopped, Failed)
- Uptime: How long the process has been running
Detailed process view
- Command-line arguments
- Parent/child process relationships
- CPU and memory usage
- Output logs
- Associated ROS2 topics and services
Use
/ps regularly when debugging to ensure all expected nodes are running and healthy.Managing multiple simulations
Drift makes it easy to run and manage multiple simulations or robots simultaneously.Running multiple instances
- Separate process groups
- Unique namespaces for ROS2 topics
- Independent Gazebo instances
- Isolated logs and outputs
Switching between simulations
Selective termination
- Graceful node shutdown
- Clean resource release
- Automatic process cleanup
Mass management
Process monitoring and debugging
Drift’s process management integrates with its debugging capabilities.Detecting failures
- Process exit codes
- Error messages in logs
- Missing dependencies
- Configuration issues
Log access
Real-time monitoring
- Processes start or stop
- Errors occur
- Resource usage spikes
Process control commands
Drift provides comprehensive process control:Starting processes
Stopping processes
Restarting processes
Pausing and resuming
Advanced process features
Process groups
Drift organizes related processes into logical groups:Dependency handling
Drift understands process dependencies:Auto-restart
Resource limits
Resource limiting helps prevent one simulation from consuming all system resources when running multiple instances.
Best practices
Use /ps regularly
Make checking process status part of your workflow:Clean up after testing
Monitor during development
When developing new features:Use descriptive names
When launching multiple simulations:Group related processes
Organize complex setups:Troubleshooting
Orphaned processes
If Drift exits unexpectedly:Process won’t stop
Missing processes
Getting started
To use Drift’s process management:-
Launch a simulation:
-
Check running processes:
-
Monitor and manage:
-
Clean up when done: