.. _package-rst-devices-generic: ============================= Package rst.devices.generic ============================= *Not documented* Messages ======== .. container:: mess4ge-multi .. container:: mess4ge-graph .. digraph:: message_graph fontname="Arial"; fontsize=11; stylesheet="../_static/corlab.css"; node [fontsize=11] node [fontname="Arial"] edge [fontsize=11] edge [fontname="Arial"] "1" [label=<
HostInformation
ASCII-STRINGhostname
MemoryStatememory_state
CpuStatecpu_state
>,shape=box,style=filled,fillcolor="white"]; "3" [label=<
CpuState
UINT32jiffy_length
Cpucpus
FLOAT32load_1
FLOAT32load_5
FLOAT32load_15
>,shape=box,style=filled,fillcolor="white"]; "4" [label=<
Cpu
INT32index
UINT64total
UINT64idle
UINT64user
UINT64user_low
UINT64system
UINT64iowait
UINT64irq
UINT64softirq
UINT64steal
UINT64guest
>,shape=box,style=filled,fillcolor="white"]; "2" [label=<
MemoryState
FLOAT32total
FLOAT32used
>,shape=box,style=filled,fillcolor="white"]; "1":cpu_state -> "3" []; "1":memory_state -> "2" []; "3" -> "4" [dir=both,arrowtail=odiamond]; "3":cpus -> "4" []; .. container:: mess4ge-list .. container:: messages * :ref:`HostInformation ` * :ref:`CpuState ` * :ref:`MemoryState ` .. container:: clearer clearer: should be made invisible via css .. _message-rst-devices-generic-hostinformation: Message HostInformation ----------------------- .. container:: message-rst-devices-generic-hostinformation-multi .. container:: message-rst-devices-generic-hostinformation-documentation .. py:class:: rst.devices.generic.HostInformation Low-level information of the CPU utilization for a single system with potentially multiple cores. This message is currently designed closely along the information available in the Linux proc filesystem. So it is probably only directly useful for Linux systems. .. codeauthor:: Jens-Christian Seele .. codeauthor:: Johannes Wienke .. py:attribute:: hostname :type: :py:class:`ASCII-STRING` Name of the host being monitored. .. py:attribute:: memory_state :type: :py:class:`rst.devices.generic.MemoryState` Information about the memory usage. .. py:attribute:: cpu_state :type: :py:class:`rst.devices.generic.CpuState` Information about the CPU usage. .. container:: message-rst-devices-generic-hostinformation-source :download:`Download this file ` .. literalinclude:: //home/jenkins/workspace/rst-manual-0.10-merge-simulator/rst-manual/../rst-proto/proto/sandbox/rst/devices/generic/HostInformation.proto :lines: 19-36 :language: protobuf :emphasize-lines: 6-6,11-11,16-16 .. _message-rst-devices-generic-cpustate: Message CpuState ---------------- .. container:: message-rst-devices-generic-cpustate-multi .. container:: message-rst-devices-generic-cpustate-documentation .. py:class:: rst.devices.generic.CpuState Low-level information of the CPU utilization for a single system with potentially multiple cores. This message is currently designed closely along the information available in the Linux proc filesystem. So it is probably only directly useful for Linux systems. .. codeauthor:: Jens-Christian Seele .. codeauthor:: Johannes Wienke .. py:attribute:: jiffy_length :type: :py:class:`UINT32` **Unit**: microsecond The length of one measurement tick for the individual CPU counters. .. py:attribute:: cpus :type: array of :py:class:`rst.devices.generic.CpuState.Cpu` An entry for each (virtualized) CPU or core of a multicore system. .. py:attribute:: load_1 :type: :py:class:`FLOAT32` **Unit**: number **Constraint**: ``value>=0`` Load average for one minute as defined by the linux kernel, e.g. in man proc: The first three fields in this file are load average figures giving the number of jobs in the run queue (state R) or waiting for disk I/O (state D) averaged over 1, 5, and 15 minutes .. py:attribute:: load_5 :type: :py:class:`FLOAT32` **Unit**: number **Constraint**: ``value>=0`` Load average for 5 minutes as defined by the linux kernel, e.g. in man proc: The first three fields in this file are load average figures giving the number of jobs in the run queue (state R) or waiting for disk I/O (state D) averaged over 1, 5, and 15 minutes .. py:attribute:: load_15 :type: :py:class:`FLOAT32` **Unit**: number **Constraint**: ``value>=0`` Load average for 15 minute as defined by the linux kernel, e.g. in man proc: The first three fields in this file are load average figures giving the number of jobs in the run queue (state R) or waiting for disk I/O (state D) averaged over 1, 5, and 15 minutes .. container:: message-rst-devices-generic-cpustate-source :download:`Download this file ` .. literalinclude:: //home/jenkins/workspace/rst-manual-0.10-merge-simulator/rst-manual/../rst-proto/proto/stable/rst/devices/generic/CpuState.proto :lines: 16-149 :language: protobuf :emphasize-lines: 7-7,99-99,110-110,121-121,132-132 .. _message-rst-devices-generic-cpustate-cpu: Message Cpu ----------- .. container:: message-rst-devices-generic-cpustate-cpu-multi .. container:: message-rst-devices-generic-cpustate-cpu-documentation .. py:class:: rst.devices.generic.CpuState.Cpu Measurements for a single CPU in the system. The supported detailed fields for each CPU vary with different Kernel versions. In oder to calculate at least a valid load of the CPU, minimally total and idle need to be given. Hence, they are required fields. Ideally, :py:attr:`idle ` + all other detail fields should sum up to the total value. With each new measurement all counters must fulfill the condition new value >= previous value. I.e. these are ever-increasing numbers and differences need to be calculated to find out the current system statistics. All values are measured in abstract ticks of a fixed length. This length is specified . .. py:attribute:: index :type: :py:class:`INT32` **Unit**: number Identifier for the respective CPU or core in a multicore system. .. py:attribute:: total :type: :py:class:`UINT64` **Unit**: number Total time spent by this CPU so far in any mode including idle. .. py:attribute:: idle :type: :py:class:`UINT64` **Unit**: number Time spent idle. .. py:attribute:: user :type: :py:class:`UINT64` **Unit**: number Time spent in user mode. .. py:attribute:: user_low :type: :py:class:`UINT64` **Unit**: number Time spent in user mode with nice (low) priority. .. py:attribute:: system :type: :py:class:`UINT64` **Unit**: number Time spent in system mode. .. py:attribute:: iowait :type: :py:class:`UINT64` **Unit**: number Time spent waiting for IO to complete. .. py:attribute:: irq :type: :py:class:`UINT64` **Unit**: number Time spent servicing interrupts. .. py:attribute:: softirq :type: :py:class:`UINT64` **Unit**: number Time spent servicing softirqs. .. py:attribute:: steal :type: :py:class:`UINT64` **Unit**: number Time spent in another operating system in case of a virtualized system. .. py:attribute:: guest :type: :py:class:`UINT64` **Unit**: number Time spent running a virtualized guest. .. container:: message-rst-devices-generic-cpustate-cpu-source :download:`Download this file ` .. literalinclude:: //home/jenkins/workspace/rst-manual-0.10-merge-simulator/rst-manual/../rst-proto/proto/stable/rst/devices/generic/CpuState.proto :lines: 41-109 :language: protobuf :emphasize-lines: 7-7,13-13,19-19,25-25,31-31,37-37,43-43,49-49,55-55,61-61,67-67 .. _message-rst-devices-generic-memorystate: Message MemoryState ------------------- .. container:: message-rst-devices-generic-memorystate-multi .. container:: message-rst-devices-generic-memorystate-documentation .. py:class:: rst.devices.generic.MemoryState Usage information about the system memory of a processing node. .. codeauthor:: Jens-Christian Seele .. codeauthor:: Johannes Wienke .. codeauthor:: Jan Moringen .. py:attribute:: total :type: :py:class:`FLOAT32` **Unit**: byte **Constraint**: ``value>=0`` The total amount of system memory available. .. py:attribute:: used :type: :py:class:`FLOAT32` **Unit**: byte **Constraint**: ``0<=value<=.total`` The currently used amount of memory. .. container:: message-rst-devices-generic-memorystate-source :download:`Download this file ` .. literalinclude:: //home/jenkins/workspace/rst-manual-0.10-merge-simulator/rst-manual/../rst-proto/proto/sandbox/rst/devices/generic/MemoryState.proto :lines: 12-28 :language: protobuf :emphasize-lines: 8-8,15-15