Manager

Note
This component is deprecated. Please consider using Manager2 instead.

The Manager runtime component is responsible for managing the specified executables. Typically it is responsible for starting all Ratatosk executables on a host and for associated periodic tasks, such as sending files to shore. Specifically, it has functionality for:

  • Starting selected components
  • Monitoring and restarting applications based on their DDS signals and/or console output.
  • Periodically starting selected applications.

It is configured using a yaml input file with the following format:

  • ManagedProcess: A list of processes to manage.

Each element of ManagedProcess have the following fields:

  • PrgName: A string identifying the process.
  • Path: The path to start the process
  • Arguments: A yaml array with the process arguments, e.g. '[/home/sintef/vesseldeployments/config/eros/modbus.yml, 2]'
  • Importancelvl: The importance of the process. Not used.
  • MaxQuietSecs: The maximum period the process can output nothing before it is deemed frozen. Values in seconds, a value of zero disables the checking.

An example yaml input file is found here: manager.yml.

An example input file is shown below, as well as here.

ManagedProcess:
- PrgName: RatatoskModbus
Path: /home/sintef/ratatosk/bin/RatatoskModbus
Arguments: [/home/sintef/vesseldeployments/config/eros/modbus.yml, 2]
Importancelvl: 1
MaxQuietSecs: 0
- PrgName: RatatoskNMEA
Path: /home/sintef/ratatosk/bin/RatatoskNMEA
Arguments: [/home/sintef/vesseldeployments/config/eros/nmea.yml, 2]
Importancelvl: 1
MaxQuietSecs: 0
- PrgName: RatatoskMRU
Path: /home/sintef/ratatosk/bin/RatatoskMRU
Arguments: [/home/sintef/vesseldeployments/config/eros/mru.yml, 2]
Importancelvl: 1
MaxQuietSecs: 0
- PrgName: RatatoskLogger
Path: /home/sintef/ratatosk/bin/RatatoskLogger
Arguments: [/home/sintef/vesseldeployments/config/eros/logger.yml, 2]
Importancelvl: 1
MaxQuietSecs: 0
- PrgName: RatatoskLoggerMru
Path: /home/sintef/ratatosk/bin/RatatoskLogger
Arguments: [/home/sintef/vesseldeployments/config/eros/loggerMru.yml, 2]
Importancelvl: 1
MaxQuietSecs: 0
- PrgName: DDS_ListSignals
Path: /home/sintef/ratatosk/bin/DDS_ListSignals
Arguments:
Importancelvl: 1
MaxQuietSecs: 60
- PrgName: RatatoskEstimator
Path: /home/sintef/ratatosk/bin/RatatoskEstimator
Arguments: [/home/sintef/vesseldeployments/config/eros/estimator.yml, 2]
Importancelvl: 1
MaxQuietSecs: 0
- PrgName: rsync
Path: rsync
Arguments: [-rv, --remove-source-files, --exclude, '*.nc~', --compress, --rsh=/usr/bin/ssh, /home/sintef/Logs, eros@marin-ikt.sintef.no:.]
Importancelvl: 1
MaxQuietSecs: 600