-
 

Package Summary

Tags No category tags.
Version 4.0.0
License BSD-3-Clause
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros/diagnostics.git
VCS Type git
VCS Version ros2-humble
Last Updated 2024-07-17
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

diagnostic_common_diagnostics

Additional Links

Maintainers

  • Austin Hendrix
  • Brice Rebsamen
  • Christian Henkel
  • Ralph Lange

Authors

  • Brice Rebsamen

General information about this repository, including legal information, build instructions and known issues/limitations, are given in README.md in the repository root.

The diagnostic_common_diagnostics package

This package provides generic nodes to monitor a Linux host.

Currently only the NTP monitor is ported to ROS2.

Nodes

cpu_monitor.py

The cpu_monitor module allows users to monitor the CPU usage of their system in real-time. It publishes the usage percentage in a diagnostic message.

  • Name of the node is “cpu_monitor_” + hostname.
  • Uses the following args:
    • warning_percentage: If the CPU usage is > warning_percentage, a WARN status will be publised.
    • window: the maximum length of the used collections.deque for queuing CPU readings.

Published Topics

/diagnostics

diagnostic_msgs/DiagnosticArray The diagnostics information.

Parameters

warning_percentage

(default: 90) warning percentage threshold.

window

(default: 1) Length of CPU readings queue.

ntp_monitor.py

Runs ‘ntpdate’ to check if the system clock is synchronized with the NTP server.

  • If the offset is smaller than offset-tolerance, an OK status will be published.
  • If the offset is larger than the configured offset-tolerance, a WARN status will be published,
  • if it is bigger than error-offset-tolerance, an ERROR status will be published.
  • If there was an error running ntpdate, an ERROR status will be published.

Published Topics

/diagnostics

diagnostic_msgs/DiagnosticArray The diagnostics information.

Parameters

ntp_hostname

(default: “pool.ntp.org”) Hostname of NTP server.

offset-tolerance”

(default: 500) Allowed offset from NTP host. Above this is a warning.

error-offset-tolerance

(default: 5000000) If the offset from the NTP host exceeds this value, it is reported as an error instead of warning.

self_offset-tolerance

(default: 500) Offset from self

diag-hostname

Computer name in diagnostics output (ex: ‘c1’)

no-self-test

(default: True) Disable self test.

hd_monitor.py

Runs ‘shutil.disk_usage’ to check if there is enough space left on a given device.

  • Above 5% of free space left, an OK status will be published.
  • Between 5% and 1%, a WARN status will be published,
  • Below 1%, an ERROR status will be published.

Published Topics

/diagnostics

diagnostic_msgs/DiagnosticArray The diagnostics information.

Parameters

path

(default: home directory “~”) Path in which to check remaining space.

ram_monitor.py

The ram_monitor module allows users to monitor the RAM usage of their system in real-time. It publishes the usage percentage in a diagnostic message.

  • Name of the node is “ram_monitor_” + hostname.
  • Uses the following args:
    • warning_percentage: If the RAM usage is > warning_percentage, a WARN status will be published.
    • window: the maximum length of the used collections.deque for queuing RAM readings.

Published Topics

/diagnostics

diagnostic_msgs/DiagnosticArray The diagnostics information.

Parameters

warning_percentage

(default: 90) warning percentage threshold.

window

(default: 1) Length of RAM readings queue.

sensors_monitor.py

The sensors_monitor module allows users to monitor the temperature, volt and fan speeds of their system in real-time. It uses the LM Sensors package to get the data.

  • Name of the node is “sensors_monitor_” + hostname.

Published Topics

/diagnostics

diagnostic_msgs/DiagnosticArray The diagnostics information.

Parameters

ignore_fans

(default: false) Whether to ignore the fan speed.

tf_monitor.py

To be ported

CHANGELOG

Changelog for package diagnostic_common_diagnostics

3.2.1 (2024-06-27)

  • refactor(sensors_monitor): ros2 port #339 (#365)
  • refactor(ram_monitor): ros2 port (#338)
  • NTP monitor improvements (#342) (#350)
  • Using ubuntu ntp server in systemtest (#346) (#347)
  • Fixing ntp launchtest (#330)
  • Contributors: Christian Henkel, Rein Appeldoorn

3.2.0 (2024-03-22)

  • Port cpu_monitor to ROS2 (#326)
  • Debugging instability introduced by #317 (#323)
  • not testing on foxy any more (#310)
  • Iron support (#304)
  • Contributors: Christian Henkel, Richard

3.1.2 (2023-03-24)

  • replacing ntpdate with ntplib (#289)
  • Contributors: Christian Henkel

3.1.1 (2023-03-16)

  • Secretly supporting galactic (#295)
  • Linting additional package (#268)
  • Maintainer update
  • Contributors: Austin, Christian Henkel, Ralph Lange

3.1.0 (2023-01-26)

  • Adding READMEs to the repo (#270)
  • License fixes (#263)
  • Fix/cleanup ros1 (#257)
  • Port ntp_monitor to ROS2 (#242)
  • Contributors: Austin, Christian Henkel, RFRIEDM-Trimble, Ralph Lange

1.9.3 (2018-05-02)

1.9.2 (2017-07-15)

  • FIX: add missing dependency
  • Contributors: trainman419

1.9.1 (2017-07-15)

  • Add queue size parameters on Publishers
  • Minor python updates
  • Added CPU percentage monitor CPU monitor that outputs the average CPU percentage and a percentage per CPU. The user can specify the warning CPU percentage. When one CPU exceeds this percentage, the diagnostics status is set to WARN.
  • Contributors: Rein Appeldoorn, trainman419

1.9.0 (2017-04-25)

  • Remove warning for missing queue size specification
  • Contributors: sandeep

1.8.10 (2016-06-14)

1.8.9 (2016-03-02)

1.8.8 (2015-08-06)

1.8.7 (2015-01-09)

  • Remove libsensors node because it isn't portable.
  • Contributors: trainman419

1.8.6 (2014-12-10)

  • Add voltage sensor support
  • Add ignore_sensors parameter
  • Add license agreement
  • Style cleanup and error handling
  • Initial commit of libsensors based sensors_monitor
  • Contributors: Mitchell Wills, trainman419

1.8.5 (2014-07-29)

1.8.4 (2014-07-24 20:51)

1.8.3 (2014-04-23)

  • ntp_diagnostic now publishing more frequently to avoid stale
  • added install rules for the common diagnostics scripts
  • Contributors: Brice Rebsamen

1.8.2 (2014-04-08)

1.8.1 (2014-04-07)

  • Add myself as maintainer
  • fixed exporting python API to address #10
  • Contributors: Austin Hendrix, Brice Rebsamen

1.8.0 (2013-04-03)

1.7.11 (2014-07-24 20:24)

1.7.10 (2013-02-22)

  • Changed package.xml version number before releasing
  • added missing license header
  • added missing license header
  • Contributors: Aaron Blasdel, Brice Rebsamen

1.7.9 (2012-12-14)

  • add missing dep to catkin
  • updated setup.py
  • Contributors: Dirk Thomas

1.7.8 (2012-12-06)

  • fix setup.py requires
  • Contributors: Dirk Thomas

1.7.7 (2012-11-10)

1.7.6 (2012-11-07 23:32)

1.7.5 (2012-11-07 21:53)

1.7.4 (2012-11-07 20:18)

1.7.3 (2012-11-04)

1.7.2 (2012-10-30 22:31)

1.7.1 (2012-10-30 15:30)

  • fix a few things after the first release
  • Contributors: Vincent Rabaud

1.7.0 (2012-10-29)

  • catkinize the stack
  • backport the Python API from 1.7.0
  • Contributors: Vincent Rabaud

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged diagnostic_common_diagnostics at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 4.1.0
License BSD-3-Clause
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros/diagnostics.git
VCS Type git
VCS Version ros2-iron
Last Updated 2024-07-17
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

diagnostic_common_diagnostics

Additional Links

Maintainers

  • Austin Hendrix
  • Brice Rebsamen
  • Christian Henkel
  • Ralph Lange

Authors

  • Brice Rebsamen

General information about this repository, including legal information, build instructions and known issues/limitations, are given in README.md in the repository root.

The diagnostic_common_diagnostics package

This package provides generic nodes to monitor a Linux host.

Currently only the NTP monitor is ported to ROS2.

Nodes

cpu_monitor.py

The cpu_monitor module allows users to monitor the CPU usage of their system in real-time. It publishes the usage percentage in a diagnostic message.

  • Name of the node is “cpu_monitor_” + hostname.
  • Uses the following args:
    • warning_percentage: If the CPU usage is > warning_percentage, a WARN status will be publised.
    • window: the maximum length of the used collections.deque for queuing CPU readings.

Published Topics

/diagnostics

diagnostic_msgs/DiagnosticArray The diagnostics information.

Parameters

warning_percentage

(default: 90) warning percentage threshold.

window

(default: 1) Length of CPU readings queue.

ntp_monitor.py

Runs ‘ntpdate’ to check if the system clock is synchronized with the NTP server.

  • If the offset is smaller than offset-tolerance, an OK status will be published.
  • If the offset is larger than the configured offset-tolerance, a WARN status will be published,
  • if it is bigger than error-offset-tolerance, an ERROR status will be published.
  • If there was an error running ntpdate, an ERROR status will be published.

Published Topics

/diagnostics

diagnostic_msgs/DiagnosticArray The diagnostics information.

Parameters

ntp_hostname

(default: “pool.ntp.org”) Hostname of NTP server.

offset-tolerance”

(default: 500) Allowed offset from NTP host. Above this is a warning.

error-offset-tolerance

(default: 5000000) If the offset from the NTP host exceeds this value, it is reported as an error instead of warning.

self_offset-tolerance

(default: 500) Offset from self

diag-hostname

Computer name in diagnostics output (ex: ‘c1’)

no-self-test

(default: True) Disable self test.

hd_monitor.py

Runs ‘shutil.disk_usage’ to check if there is enough space left on a given device.

  • Above 5% of free space left, an OK status will be published.
  • Between 5% and 1%, a WARN status will be published,
  • Below 1%, an ERROR status will be published.

Published Topics

/diagnostics

diagnostic_msgs/DiagnosticArray The diagnostics information.

Parameters

path

(default: home directory “~”) Path in which to check remaining space.

ram_monitor.py

The ram_monitor module allows users to monitor the RAM usage of their system in real-time. It publishes the usage percentage in a diagnostic message.

  • Name of the node is “ram_monitor_” + hostname.
  • Uses the following args:
    • warning_percentage: If the RAM usage is > warning_percentage, a WARN status will be published.
    • window: the maximum length of the used collections.deque for queuing RAM readings.

Published Topics

/diagnostics

diagnostic_msgs/DiagnosticArray The diagnostics information.

Parameters

warning_percentage

(default: 90) warning percentage threshold.

window

(default: 1) Length of RAM readings queue.

sensors_monitor.py

The sensors_monitor module allows users to monitor the temperature, volt and fan speeds of their system in real-time. It uses the LM Sensors package to get the data.

  • Name of the node is “sensors_monitor_” + hostname.

Published Topics

/diagnostics

diagnostic_msgs/DiagnosticArray The diagnostics information.

Parameters

ignore_fans

(default: false) Whether to ignore the fan speed.

tf_monitor.py

To be ported

CHANGELOG

Changelog for package diagnostic_common_diagnostics

3.2.0 (2024-03-22)

  • Port cpu_monitor to ROS2 (#326)
  • Debugging instability introduced by #317 (#323)
  • not testing on foxy any more (#310)
  • Iron support (#304)
  • Contributors: Christian Henkel, Richard

3.1.2 (2023-03-24)

  • replacing ntpdate with ntplib (#289)
  • Contributors: Christian Henkel

3.1.1 (2023-03-16)

  • Secretly supporting galactic (#295)
  • Linting additional package (#268)
  • Maintainer update
  • Contributors: Austin, Christian Henkel, Ralph Lange

3.1.0 (2023-01-26)

  • Adding READMEs to the repo (#270)
  • License fixes (#263)
  • Fix/cleanup ros1 (#257)
  • Port ntp_monitor to ROS2 (#242)
  • Contributors: Austin, Christian Henkel, RFRIEDM-Trimble, Ralph Lange

1.9.3 (2018-05-02)

1.9.2 (2017-07-15)

  • FIX: add missing dependency
  • Contributors: trainman419

1.9.1 (2017-07-15)

  • Add queue size parameters on Publishers
  • Minor python updates
  • Added CPU percentage monitor CPU monitor that outputs the average CPU percentage and a percentage per CPU. The user can specify the warning CPU percentage. When one CPU exceeds this percentage, the diagnostics status is set to WARN.
  • Contributors: Rein Appeldoorn, trainman419

1.9.0 (2017-04-25)

  • Remove warning for missing queue size specification
  • Contributors: sandeep

1.8.10 (2016-06-14)

1.8.9 (2016-03-02)

1.8.8 (2015-08-06)

1.8.7 (2015-01-09)

  • Remove libsensors node because it isn't portable.
  • Contributors: trainman419

1.8.6 (2014-12-10)

  • Add voltage sensor support
  • Add ignore_sensors parameter
  • Add license agreement
  • Style cleanup and error handling
  • Initial commit of libsensors based sensors_monitor
  • Contributors: Mitchell Wills, trainman419

1.8.5 (2014-07-29)

1.8.4 (2014-07-24 20:51)

1.8.3 (2014-04-23)

  • ntp_diagnostic now publishing more frequently to avoid stale
  • added install rules for the common diagnostics scripts
  • Contributors: Brice Rebsamen

1.8.2 (2014-04-08)

1.8.1 (2014-04-07)

  • Add myself as maintainer
  • fixed exporting python API to address #10
  • Contributors: Austin Hendrix, Brice Rebsamen

1.8.0 (2013-04-03)

1.7.11 (2014-07-24 20:24)

1.7.10 (2013-02-22)

  • Changed package.xml version number before releasing
  • added missing license header
  • added missing license header
  • Contributors: Aaron Blasdel, Brice Rebsamen

1.7.9 (2012-12-14)

  • add missing dep to catkin
  • updated setup.py
  • Contributors: Dirk Thomas

1.7.8 (2012-12-06)

  • fix setup.py requires
  • Contributors: Dirk Thomas

1.7.7 (2012-11-10)

1.7.6 (2012-11-07 23:32)

1.7.5 (2012-11-07 21:53)

1.7.4 (2012-11-07 20:18)

1.7.3 (2012-11-04)

1.7.2 (2012-10-30 22:31)

1.7.1 (2012-10-30 15:30)

  • fix a few things after the first release
  • Contributors: Vincent Rabaud

1.7.0 (2012-10-29)

  • catkinize the stack
  • backport the Python API from 1.7.0
  • Contributors: Vincent Rabaud

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged diagnostic_common_diagnostics at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 4.3.1
License BSD-3-Clause
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros/diagnostics.git
VCS Type git
VCS Version ros2
Last Updated 2024-07-31
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

diagnostic_common_diagnostics

Additional Links

Maintainers

  • Austin Hendrix
  • Brice Rebsamen
  • Christian Henkel
  • Ralph Lange

Authors

  • Brice Rebsamen

General information about this repository, including legal information, build instructions and known issues/limitations, are given in README.md in the repository root.

The diagnostic_common_diagnostics package

This package provides generic nodes to monitor a Linux host.

Currently only the NTP monitor is ported to ROS2.

Nodes

cpu_monitor.py

The cpu_monitor module allows users to monitor the CPU usage of their system in real-time. It publishes the usage percentage in a diagnostic message.

  • Name of the node is “cpu_monitor_” + hostname.
  • Uses the following args:
    • warning_percentage: If the CPU usage is > warning_percentage, a WARN status will be publised.
    • window: the maximum length of the used collections.deque for queuing CPU readings.

Published Topics

/diagnostics

diagnostic_msgs/DiagnosticArray The diagnostics information.

Parameters

warning_percentage

(default: 90) warning percentage threshold.

window

(default: 1) Length of CPU readings queue.

ntp_monitor.py

Runs ‘ntpdate’ to check if the system clock is synchronized with the NTP server.

  • If the offset is smaller than offset-tolerance, an OK status will be published.
  • If the offset is larger than the configured offset-tolerance, a WARN status will be published,
  • if it is bigger than error-offset-tolerance, an ERROR status will be published.
  • If there was an error running ntpdate, an ERROR status will be published.

Published Topics

/diagnostics

diagnostic_msgs/DiagnosticArray The diagnostics information.

Parameters

ntp_hostname

(default: “pool.ntp.org”) Hostname of NTP server.

offset-tolerance”

(default: 500) Allowed offset from NTP host. Above this is a warning.

error-offset-tolerance

(default: 5000000) If the offset from the NTP host exceeds this value, it is reported as an error instead of warning.

self_offset-tolerance

(default: 500) Offset from self

diag-hostname

Computer name in diagnostics output (ex: ‘c1’)

no-self-test

(default: True) Disable self test.

hd_monitor.py

Runs ‘shutil.disk_usage’ to check if there is enough space left on a given device.

  • Above 5% of free space left, an OK status will be published.
  • Between 5% and 1%, a WARN status will be published,
  • Below 1%, an ERROR status will be published.

Published Topics

/diagnostics

diagnostic_msgs/DiagnosticArray The diagnostics information.

Parameters

path

(default: home directory “~”) Path in which to check remaining space.

ram_monitor.py

The ram_monitor module allows users to monitor the RAM usage of their system in real-time. It publishes the usage percentage in a diagnostic message.

  • Name of the node is “ram_monitor_” + hostname.
  • Uses the following args:
    • warning_percentage: If the RAM usage is > warning_percentage, a WARN status will be published.
    • window: the maximum length of the used collections.deque for queuing RAM readings.

Published Topics

/diagnostics

diagnostic_msgs/DiagnosticArray The diagnostics information.

Parameters

warning_percentage

(default: 90) warning percentage threshold.

window

(default: 1) Length of RAM readings queue.

sensors_monitor.py

The sensors_monitor module allows users to monitor the temperature, volt and fan speeds of their system in real-time. It uses the LM Sensors package to get the data.

  • Name of the node is “sensors_monitor_” + hostname.

Published Topics

/diagnostics

diagnostic_msgs/DiagnosticArray The diagnostics information.

Parameters

ignore_fans

(default: false) Whether to ignore the fan speed.

tf_monitor.py

To be ported

CHANGELOG

Changelog for package diagnostic_common_diagnostics

4.3.1 (2024-07-30)

  • fixing pep257 problems introduced by #334 (#384)
  • Port hd_monitor to ROS2 (#334)
  • Contributors: Antoine Lima, Christian Henkel

3.2.1 (2024-06-27)

  • refactor(sensors_monitor): ros2 port #339
  • refactor(ram_monitor): ros2 port (#338)
  • NTP monitor improvements (#342)
  • Using ubuntu ntp server in systemtest (#346)
  • Fixing ntp launchtest (#330)
  • Contributors: Christian Henkel, Rein Appeldoorn, Tony Najjar

3.2.0 (2024-03-22)

  • Port cpu_monitor to ROS2 (#326)
  • Debugging instability introduced by #317 (#323)
  • not testing on foxy any more (#310)
  • Iron support (#304)
  • Contributors: Christian Henkel, Richard

3.1.2 (2023-03-24)

  • replacing ntpdate with ntplib (#289)
  • Contributors: Christian Henkel

3.1.1 (2023-03-16)

  • Secretly supporting galactic (#295)
  • Linting additional package (#268)
  • Maintainer update
  • Contributors: Austin, Christian Henkel, Ralph Lange

3.1.0 (2023-01-26)

  • Adding READMEs to the repo (#270)
  • License fixes (#263)
  • Fix/cleanup ros1 (#257)
  • Port ntp_monitor to ROS2 (#242)
  • Contributors: Austin, Christian Henkel, RFRIEDM-Trimble, Ralph Lange

1.9.3 (2018-05-02)

1.9.2 (2017-07-15)

  • FIX: add missing dependency
  • Contributors: trainman419

1.9.1 (2017-07-15)

  • Add queue size parameters on Publishers
  • Minor python updates
  • Added CPU percentage monitor CPU monitor that outputs the average CPU percentage and a percentage per CPU. The user can specify the warning CPU percentage. When one CPU exceeds this percentage, the diagnostics status is set to WARN.
  • Contributors: Rein Appeldoorn, trainman419

1.9.0 (2017-04-25)

  • Remove warning for missing queue size specification
  • Contributors: sandeep

1.8.10 (2016-06-14)

1.8.9 (2016-03-02)

1.8.8 (2015-08-06)

1.8.7 (2015-01-09)

  • Remove libsensors node because it isn't portable.
  • Contributors: trainman419

1.8.6 (2014-12-10)

  • Add voltage sensor support
  • Add ignore_sensors parameter
  • Add license agreement
  • Style cleanup and error handling
  • Initial commit of libsensors based sensors_monitor
  • Contributors: Mitchell Wills, trainman419

1.8.5 (2014-07-29)

1.8.4 (2014-07-24 20:51)

1.8.3 (2014-04-23)

  • ntp_diagnostic now publishing more frequently to avoid stale
  • added install rules for the common diagnostics scripts
  • Contributors: Brice Rebsamen

1.8.2 (2014-04-08)

1.8.1 (2014-04-07)

  • Add myself as maintainer
  • fixed exporting python API to address #10
  • Contributors: Austin Hendrix, Brice Rebsamen

1.8.0 (2013-04-03)

1.7.11 (2014-07-24 20:24)

1.7.10 (2013-02-22)

  • Changed package.xml version number before releasing
  • added missing license header
  • added missing license header
  • Contributors: Aaron Blasdel, Brice Rebsamen

1.7.9 (2012-12-14)

  • add missing dep to catkin
  • updated setup.py
  • Contributors: Dirk Thomas

1.7.8 (2012-12-06)

  • fix setup.py requires
  • Contributors: Dirk Thomas

1.7.7 (2012-11-10)

1.7.6 (2012-11-07 23:32)

1.7.5 (2012-11-07 21:53)

1.7.4 (2012-11-07 20:18)

1.7.3 (2012-11-04)

1.7.2 (2012-10-30 22:31)

1.7.1 (2012-10-30 15:30)

  • fix a few things after the first release
  • Contributors: Vincent Rabaud

1.7.0 (2012-10-29)

  • catkinize the stack
  • backport the Python API from 1.7.0
  • Contributors: Vincent Rabaud

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged diagnostic_common_diagnostics at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 4.3.1
License BSD-3-Clause
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros/diagnostics.git
VCS Type git
VCS Version ros2
Last Updated 2024-07-31
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

diagnostic_common_diagnostics

Additional Links

Maintainers

  • Austin Hendrix
  • Brice Rebsamen
  • Christian Henkel
  • Ralph Lange

Authors

  • Brice Rebsamen

General information about this repository, including legal information, build instructions and known issues/limitations, are given in README.md in the repository root.

The diagnostic_common_diagnostics package

This package provides generic nodes to monitor a Linux host.

Currently only the NTP monitor is ported to ROS2.

Nodes

cpu_monitor.py

The cpu_monitor module allows users to monitor the CPU usage of their system in real-time. It publishes the usage percentage in a diagnostic message.

  • Name of the node is “cpu_monitor_” + hostname.
  • Uses the following args:
    • warning_percentage: If the CPU usage is > warning_percentage, a WARN status will be publised.
    • window: the maximum length of the used collections.deque for queuing CPU readings.

Published Topics

/diagnostics

diagnostic_msgs/DiagnosticArray The diagnostics information.

Parameters

warning_percentage

(default: 90) warning percentage threshold.

window

(default: 1) Length of CPU readings queue.

ntp_monitor.py

Runs ‘ntpdate’ to check if the system clock is synchronized with the NTP server.

  • If the offset is smaller than offset-tolerance, an OK status will be published.
  • If the offset is larger than the configured offset-tolerance, a WARN status will be published,
  • if it is bigger than error-offset-tolerance, an ERROR status will be published.
  • If there was an error running ntpdate, an ERROR status will be published.

Published Topics

/diagnostics

diagnostic_msgs/DiagnosticArray The diagnostics information.

Parameters

ntp_hostname

(default: “pool.ntp.org”) Hostname of NTP server.

offset-tolerance”

(default: 500) Allowed offset from NTP host. Above this is a warning.

error-offset-tolerance

(default: 5000000) If the offset from the NTP host exceeds this value, it is reported as an error instead of warning.

self_offset-tolerance

(default: 500) Offset from self

diag-hostname

Computer name in diagnostics output (ex: ‘c1’)

no-self-test

(default: True) Disable self test.

hd_monitor.py

Runs ‘shutil.disk_usage’ to check if there is enough space left on a given device.

  • Above 5% of free space left, an OK status will be published.
  • Between 5% and 1%, a WARN status will be published,
  • Below 1%, an ERROR status will be published.

Published Topics

/diagnostics

diagnostic_msgs/DiagnosticArray The diagnostics information.

Parameters

path

(default: home directory “~”) Path in which to check remaining space.

ram_monitor.py

The ram_monitor module allows users to monitor the RAM usage of their system in real-time. It publishes the usage percentage in a diagnostic message.

  • Name of the node is “ram_monitor_” + hostname.
  • Uses the following args:
    • warning_percentage: If the RAM usage is > warning_percentage, a WARN status will be published.
    • window: the maximum length of the used collections.deque for queuing RAM readings.

Published Topics

/diagnostics

diagnostic_msgs/DiagnosticArray The diagnostics information.

Parameters

warning_percentage

(default: 90) warning percentage threshold.

window

(default: 1) Length of RAM readings queue.

sensors_monitor.py

The sensors_monitor module allows users to monitor the temperature, volt and fan speeds of their system in real-time. It uses the LM Sensors package to get the data.

  • Name of the node is “sensors_monitor_” + hostname.

Published Topics

/diagnostics

diagnostic_msgs/DiagnosticArray The diagnostics information.

Parameters

ignore_fans

(default: false) Whether to ignore the fan speed.

tf_monitor.py

To be ported

CHANGELOG

Changelog for package diagnostic_common_diagnostics

4.3.1 (2024-07-30)

  • fixing pep257 problems introduced by #334 (#384)
  • Port hd_monitor to ROS2 (#334)
  • Contributors: Antoine Lima, Christian Henkel

3.2.1 (2024-06-27)

  • refactor(sensors_monitor): ros2 port #339
  • refactor(ram_monitor): ros2 port (#338)
  • NTP monitor improvements (#342)
  • Using ubuntu ntp server in systemtest (#346)
  • Fixing ntp launchtest (#330)
  • Contributors: Christian Henkel, Rein Appeldoorn, Tony Najjar

3.2.0 (2024-03-22)

  • Port cpu_monitor to ROS2 (#326)
  • Debugging instability introduced by #317 (#323)
  • not testing on foxy any more (#310)
  • Iron support (#304)
  • Contributors: Christian Henkel, Richard

3.1.2 (2023-03-24)

  • replacing ntpdate with ntplib (#289)
  • Contributors: Christian Henkel

3.1.1 (2023-03-16)

  • Secretly supporting galactic (#295)
  • Linting additional package (#268)
  • Maintainer update
  • Contributors: Austin, Christian Henkel, Ralph Lange

3.1.0 (2023-01-26)

  • Adding READMEs to the repo (#270)
  • License fixes (#263)
  • Fix/cleanup ros1 (#257)
  • Port ntp_monitor to ROS2 (#242)
  • Contributors: Austin, Christian Henkel, RFRIEDM-Trimble, Ralph Lange

1.9.3 (2018-05-02)

1.9.2 (2017-07-15)

  • FIX: add missing dependency
  • Contributors: trainman419

1.9.1 (2017-07-15)

  • Add queue size parameters on Publishers
  • Minor python updates
  • Added CPU percentage monitor CPU monitor that outputs the average CPU percentage and a percentage per CPU. The user can specify the warning CPU percentage. When one CPU exceeds this percentage, the diagnostics status is set to WARN.
  • Contributors: Rein Appeldoorn, trainman419

1.9.0 (2017-04-25)

  • Remove warning for missing queue size specification
  • Contributors: sandeep

1.8.10 (2016-06-14)

1.8.9 (2016-03-02)

1.8.8 (2015-08-06)

1.8.7 (2015-01-09)

  • Remove libsensors node because it isn't portable.
  • Contributors: trainman419

1.8.6 (2014-12-10)

  • Add voltage sensor support
  • Add ignore_sensors parameter
  • Add license agreement
  • Style cleanup and error handling
  • Initial commit of libsensors based sensors_monitor
  • Contributors: Mitchell Wills, trainman419

1.8.5 (2014-07-29)

1.8.4 (2014-07-24 20:51)

1.8.3 (2014-04-23)

  • ntp_diagnostic now publishing more frequently to avoid stale
  • added install rules for the common diagnostics scripts
  • Contributors: Brice Rebsamen

1.8.2 (2014-04-08)

1.8.1 (2014-04-07)

  • Add myself as maintainer
  • fixed exporting python API to address #10
  • Contributors: Austin Hendrix, Brice Rebsamen

1.8.0 (2013-04-03)

1.7.11 (2014-07-24 20:24)

1.7.10 (2013-02-22)

  • Changed package.xml version number before releasing
  • added missing license header
  • added missing license header
  • Contributors: Aaron Blasdel, Brice Rebsamen

1.7.9 (2012-12-14)

  • add missing dep to catkin
  • updated setup.py
  • Contributors: Dirk Thomas

1.7.8 (2012-12-06)

  • fix setup.py requires
  • Contributors: Dirk Thomas

1.7.7 (2012-11-10)

1.7.6 (2012-11-07 23:32)

1.7.5 (2012-11-07 21:53)

1.7.4 (2012-11-07 20:18)

1.7.3 (2012-11-04)

1.7.2 (2012-10-30 22:31)

1.7.1 (2012-10-30 15:30)

  • fix a few things after the first release
  • Contributors: Vincent Rabaud

1.7.0 (2012-10-29)

  • catkinize the stack
  • backport the Python API from 1.7.0
  • Contributors: Vincent Rabaud

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged diagnostic_common_diagnostics at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 1.11.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros/diagnostics.git
VCS Type git
VCS Version noetic-devel
Last Updated 2024-04-26
Dev Status MAINTAINED
CI status
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

diagnostic_common_diagnostics

Additional Links

Maintainers

  • Guglielmo Gemignani
  • Austin Hendrix

Authors

  • Brice Rebsamen
README
No README found. No README in repository either.
CHANGELOG

Changelog for package diagnostic_common_diagnostics

1.11.0 (2021-12-31)

  • Added ram monitor (#222)
  • Improve sensor output processing in sensors_monitor.py (#223)
  • Decode bytes into string in ntp_monitor (#220) Co-authored-by: Maxime Noizet <<maxime.noizet@etu.utc.fr>>
  • Add missing lm-sensors dependency for sensors_monitor.py (#198) Co-authored-by: Vincent Rousseau <<vincent.rousseau@sabi-agri.com>>
  • Contributors: Noizet Maxime, Rousseau Vincent, chrisflesher

1.10.4 (2021-03-14)

  • Port diagnostic common diagnostics to python 3
  • fix(cpu_monitor): Exception on shutdown (#186) Catch sigint properly
  • Contributors: Rein Appeldoorn, gemignani

1.10.3 (2020-12-05)

  • Update maintainer info
  • Contributors: gemignani

1.10.2 (2020-09-03)

1.10.1 (2020-08-20)

  • Fix minor issues
  • Fix shebang line for python3 (#141)
  • Contributors: Mikael Arguedas, gemignani

1.10.0 (2020-08-11)

  • Add feature of window avereging for cpu monitor (#153)
  • Make Guglielmo Gemignani ROS1 maintainer (#155)
  • Contributors: Guglielmo Gemignani, Rein Appeldoorn, gemignani

1.9.4 (2020-04-01)

  • noetic release (#136)
  • Contributors: Alejandro Hernández Cordero

1.9.3 (2018-05-02)

1.9.2 (2017-07-15)

  • FIX: add missing dependency
  • Contributors: trainman419

1.9.1 (2017-07-15)

  • Add queue size parameters on Publishers
  • Minor python updates
  • Added CPU percentage monitor CPU monitor that outputs the average CPU percentage and a percentage per CPU. The user can specify the warning CPU percentage. When one CPU exceeds this percentage, the diagnostics status is set to WARN.
  • Contributors: Rein Appeldoorn, trainman419

1.9.0 (2017-04-25)

  • Remove warning for missing queue size specification
  • Contributors: sandeep

1.8.10 (2016-06-14)

1.8.9 (2016-03-02)

1.8.8 (2015-08-06)

1.8.7 (2015-01-09)

  • Remove libsensors node because it isn't portable.
  • Contributors: trainman419

1.8.6 (2014-12-10)

  • Add voltage sensor support
  • Add ignore_sensors parameter
  • Add license agreement
  • Style cleanup and error handling
  • Initial commit of libsensors based sensors_monitor
  • Contributors: Mitchell Wills, trainman419

1.8.5 (2014-07-29)

1.8.4 (2014-07-24 20:51)

1.8.3 (2014-04-23)

  • ntp_diagnostic now publishing more frequently to avoid stale
  • added install rules for the common diagnostics scripts
  • Contributors: Brice Rebsamen

1.8.2 (2014-04-08)

1.8.1 (2014-04-07)

  • Add myself as maintainer
  • fixed exporting python API to address #10
  • Contributors: Austin Hendrix, Brice Rebsamen

1.8.0 (2013-04-03)

1.7.11 (2014-07-24 20:24)

1.7.10 (2013-02-22)

  • Changed package.xml version number before releasing
  • added missing license header
  • added missing license header
  • Contributors: Aaron Blasdel, Brice Rebsamen

1.7.9 (2012-12-14)

  • add missing dep to catkin
  • updated setup.py
  • Contributors: Dirk Thomas

1.7.8 (2012-12-06)

  • fix setup.py requires
  • Contributors: Dirk Thomas

1.7.7 (2012-11-10)

1.7.6 (2012-11-07 23:32)

1.7.5 (2012-11-07 21:53)

1.7.4 (2012-11-07 20:18)

1.7.3 (2012-11-04)

1.7.2 (2012-10-30 22:31)

1.7.1 (2012-10-30 15:30)

  • fix a few things after the first release
  • Contributors: Vincent Rabaud

1.7.0 (2012-10-29)

  • catkinize the stack
  • backport the Python API from 1.7.0
  • Contributors: Vincent Rabaud

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

System Dependencies

Dependant Packages

Name Deps
diagnostics

Recent questions tagged diagnostic_common_diagnostics at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 1.9.3
License BSD-3-Clause
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros/diagnostics.git
VCS Type git
VCS Version galactic
Last Updated 2023-01-09
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

diagnostic_common_diagnostics

Additional Links

Maintainers

  • Brice Rebsamen
  • Austin Hendrix
  • Brice Rebsamen
  • Ralph Lange

Authors

No additional authors.
README
No README found. No README in repository either.
CHANGELOG

Changelog for package diagnostic_common_diagnostics

Forthcoming

  • Port the ntp_monitor to python3 and ROS2

1.9.3 (2018-05-02)

1.9.2 (2017-07-15)

  • FIX: add missing dependency
  • Contributors: trainman419

1.9.1 (2017-07-15)

  • Add queue size parameters on Publishers
  • Minor python updates
  • Added CPU percentage monitor CPU monitor that outputs the average CPU percentage and a percentage per CPU. The user can specify the warning CPU percentage. When one CPU exceeds this percentage, the diagnostics status is set to WARN.
  • Contributors: Rein Appeldoorn, trainman419

1.9.0 (2017-04-25)

  • Remove warning for missing queue size specification
  • Contributors: sandeep

1.8.10 (2016-06-14)

1.8.9 (2016-03-02)

1.8.8 (2015-08-06)

1.8.7 (2015-01-09)

  • Remove libsensors node because it isn't portable.
  • Contributors: trainman419

1.8.6 (2014-12-10)

  • Add voltage sensor support
  • Add ignore_sensors parameter
  • Add license agreement
  • Style cleanup and error handling
  • Initial commit of libsensors based sensors_monitor
  • Contributors: Mitchell Wills, trainman419

1.8.5 (2014-07-29)

1.8.4 (2014-07-24 20:51)

1.8.3 (2014-04-23)

  • ntp_diagnostic now publishing more frequently to avoid stale
  • added install rules for the common diagnostics scripts
  • Contributors: Brice Rebsamen

1.8.2 (2014-04-08)

1.8.1 (2014-04-07)

  • Add myself as maintainer
  • fixed exporting python API to address #10
  • Contributors: Austin Hendrix, Brice Rebsamen

1.8.0 (2013-04-03)

1.7.11 (2014-07-24 20:24)

1.7.10 (2013-02-22)

  • Changed package.xml version number before releasing
  • added missing license header
  • added missing license header
  • Contributors: Aaron Blasdel, Brice Rebsamen

1.7.9 (2012-12-14)

  • add missing dep to catkin
  • updated setup.py
  • Contributors: Dirk Thomas

1.7.8 (2012-12-06)

  • fix setup.py requires
  • Contributors: Dirk Thomas

1.7.7 (2012-11-10)

1.7.6 (2012-11-07 23:32)

1.7.5 (2012-11-07 21:53)

1.7.4 (2012-11-07 20:18)

1.7.3 (2012-11-04)

1.7.2 (2012-10-30 22:31)

1.7.1 (2012-10-30 15:30)

  • fix a few things after the first release
  • Contributors: Vincent Rabaud

1.7.0 (2012-10-29)

  • catkinize the stack
  • backport the Python API from 1.7.0
  • Contributors: Vincent Rabaud

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged diagnostic_common_diagnostics at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 1.9.7
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros/diagnostics.git
VCS Type git
VCS Version indigo-devel
Last Updated 2020-10-06
Dev Status MAINTAINED
CI status
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

diagnostic_common_diagnostics

Additional Links

Maintainers

  • Guglielmo Gemignani
  • Austin Hendrix

Authors

  • Brice Rebsamen
README
No README found. No README in repository either.
CHANGELOG

Changelog for package diagnostic_common_diagnostics

1.9.7 (2020-09-03)

1.9.6 (2020-08-18)

  • Fix shebang line for python3 (#141)
  • Contributors: Mikael Arguedas, gemignani

1.9.5 (2020-08-10)

  • Added feature of window averaging for cpu monitor
  • Contributors: Guglielmo Gemignani, Rein Appeldoorn

1.9.3 (2018-05-02)

1.9.2 (2017-07-15)

  • FIX: add missing dependency
  • Contributors: trainman419

1.9.1 (2017-07-15)

  • Add queue size parameters on Publishers
  • Minor python updates
  • Added CPU percentage monitor CPU monitor that outputs the average CPU percentage and a percentage per CPU. The user can specify the warning CPU percentage. When one CPU exceeds this percentage, the diagnostics status is set to WARN.
  • Contributors: Rein Appeldoorn, trainman419

1.9.0 (2017-04-25)

  • Remove warning for missing queue size specification
  • Contributors: sandeep

1.8.10 (2016-06-14)

1.8.9 (2016-03-02)

1.8.8 (2015-08-06)

1.8.7 (2015-01-09)

  • Remove libsensors node because it isn't portable.
  • Contributors: trainman419

1.8.6 (2014-12-10)

  • Add voltage sensor support
  • Add ignore_sensors parameter
  • Add license agreement
  • Style cleanup and error handling
  • Initial commit of libsensors based sensors_monitor
  • Contributors: Mitchell Wills, trainman419

1.8.5 (2014-07-29)

1.8.4 (2014-07-24 20:51)

1.8.3 (2014-04-23)

  • ntp_diagnostic now publishing more frequently to avoid stale
  • added install rules for the common diagnostics scripts
  • Contributors: Brice Rebsamen

1.8.2 (2014-04-08)

1.8.1 (2014-04-07)

  • Add myself as maintainer
  • fixed exporting python API to address #10
  • Contributors: Austin Hendrix, Brice Rebsamen

1.8.0 (2013-04-03)

1.7.11 (2014-07-24 20:24)

1.7.10 (2013-02-22)

  • Changed package.xml version number before releasing
  • added missing license header
  • added missing license header
  • Contributors: Aaron Blasdel, Brice Rebsamen

1.7.9 (2012-12-14)

  • add missing dep to catkin
  • updated setup.py
  • Contributors: Dirk Thomas

1.7.8 (2012-12-06)

  • fix setup.py requires
  • Contributors: Dirk Thomas

1.7.7 (2012-11-10)

1.7.6 (2012-11-07 23:32)

1.7.5 (2012-11-07 21:53)

1.7.4 (2012-11-07 20:18)

1.7.3 (2012-11-04)

1.7.2 (2012-10-30 22:31)

1.7.1 (2012-10-30 15:30)

  • fix a few things after the first release
  • Contributors: Vincent Rabaud

1.7.0 (2012-10-29)

  • catkinize the stack
  • backport the Python API from 1.7.0
  • Contributors: Vincent Rabaud

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

System Dependencies

Dependant Packages

Name Deps
diagnostics

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged diagnostic_common_diagnostics at Robotics Stack Exchange