All Projects → alspitz → cpu_monitor

alspitz / cpu_monitor

Licence: MIT license
ROS node that publishes all nodes' CPU and memory usage

Programming Languages

python
139335 projects - #7 most used programming language
CMake
9771 projects

Projects that are alternatives of or similar to cpu monitor

audria
audria - A Utility for Detailed Ressource Inspection of Applications
Stars: ✭ 35 (-32.69%)
Mutual labels:  cpu, memory, cpu-monitoring, memory-usage, cpu-usage, memory-monitoring
psutil
Cross-platform lib for process and system monitoring in Python
Stars: ✭ 8,488 (+16223.08%)
Mutual labels:  cpu, memory, ps, top, psutil
px
ps and top for human beings
Stars: ✭ 151 (+190.38%)
Mutual labels:  ps, top, htop
doc
Get usage and health data about your Node.js process.
Stars: ✭ 17 (-67.31%)
Mutual labels:  cpu, memory
Xfce4 Genmon Scripts
🐭 XFCE panel generic monitor scripts
Stars: ✭ 69 (+32.69%)
Mutual labels:  cpu, memory
Iglance
Free system monitor for OSX and macOS. See all system information at a glance in the menu bar.
Stars: ✭ 1,358 (+2511.54%)
Mutual labels:  cpu, memory
Detoxinstruments
Detox Instruments is a performance–analysis and testing framework, designed to help developers profile their mobile apps in order to better understand and optimize their app's behavior and performance.
Stars: ✭ 513 (+886.54%)
Mutual labels:  cpu, memory
nodejs
Node.js in-process collectors for Instana
Stars: ✭ 66 (+26.92%)
Mutual labels:  cpu, memory
Easydeviceinfo
📱 [Android Library] Get device information in a super easy way.
Stars: ✭ 1,698 (+3165.38%)
Mutual labels:  cpu, memory
Sysstat
Performance monitoring tools for Linux
Stars: ✭ 2,055 (+3851.92%)
Mutual labels:  cpu, memory
Pubg mobile memory hacking examples
Pubg Mobile Emulator Gameloop Memory Hacking C++ code examples. Ex: Name, Coord, Bones, Weapons, Items, Box, Drop etc.
Stars: ✭ 224 (+330.77%)
Mutual labels:  cpu, memory
Rainbarf
it's like Rainmeter, but for CLI!
Stars: ✭ 1,087 (+1990.38%)
Mutual labels:  cpu, memory
Walle
iOS Application performance monitoring
Stars: ✭ 19 (-63.46%)
Mutual labels:  cpu, memory
Server Stats
Statsy is a easy to use open source PHP tool for developers, that allows you to return various types of information about your server.
Stars: ✭ 101 (+94.23%)
Mutual labels:  cpu, memory
Heim
Cross-platform async library for system information fetching 🦀
Stars: ✭ 572 (+1000%)
Mutual labels:  cpu, memory
Touch Bar Istats
Show CPU/GPU/MEM temperature on Touch Bar with BetterTouchTool!
Stars: ✭ 141 (+171.15%)
Mutual labels:  cpu, memory
Ios Monitor Platform
📚 iOS 性能监控 SDK —— Wedjat(华狄特)开发过程的调研和整理
Stars: ✭ 2,316 (+4353.85%)
Mutual labels:  cpu, memory
S Tui
Terminal-based CPU stress and monitoring utility
Stars: ✭ 2,825 (+5332.69%)
Mutual labels:  cpu, psutil
rh
Resource Harvester - a tool to gather low-level system data and make it easy to use programmatically
Stars: ✭ 18 (-65.38%)
Mutual labels:  cpu-monitoring, memory-monitoring
Sympact
🔥 Stupid Simple CPU/MEM "Profiler" for your JS code.
Stars: ✭ 439 (+744.23%)
Mutual labels:  cpu, memory

cpu_monitor

monitor.py is a ROS node that will ask the ROS master for a list of nodes and publish their CPU and memory usage as ROS topics. It will also publish the total system CPU and memory usage.

Only nodes running on the same machine will have their CPU and memory usage published.

Dependencies

  • psutil for the Python version you are using (2 or 3).

One of the following should work on most machines.

python -m pip install psutil
python3 -m pip install psutil
sudo apt install python-psutil
sudo apt install python3-psutil

Configuration

Polling Period

The polling period can be configured by setting the poll_period argument when launching. The default value if not specified is 1.0 seconds.

Setting poll_period to 10 seconds on the command line:

roslaunch cpu_monitor cpu_monitor.launch poll_period:=10

Setting poll_period to 10 seconds in a launch file_

<!-- mylaunchfile.launch -->
<launch>
  <include file="$(find cpu_monitor)/launch/cpu_monitor.launch">
    <arg name="poll_period" value="10.0"/>
  </include>
</launch>

Saving to CSV

You can save the results to a CSV by setting the save_to_csv parameter to true. The results will be saved to the relative path specified in csv_file parameter. By default the file is saved in the folder under a file names cpu_monitor.csv. If save_to_csv is set to true, the node waits for 5 seconds for other nodes to start up before saving the list of nodes it will be monitoring. This is so that the header of the CSV stays constant throughout the tests. If new nodes pop up, they will not be recorded, as this would change the header of the CSV.

Source List

You can specify which ROS nodes you would like to save to csv by setting the source_list argument when launching. The default is an empty list which then monitors all ROS nodes active at 5 seconds after startup.

Setting source_list in the command line:

roslaunch cpu_monitor cpu_monitor.launch source_list:="[<node_name_1>, <node_name_2>]"

Or you can set the default values in the included launch file cpu_monitor.launch

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].