.. _package-rst-monitoring:
========================
Package rst.monitoring
========================
*Not documented*
Messages
========
.. container:: mess4ge-multi
.. container:: mess4ge-graph
.. digraph:: message_graph
fontname="Arial";
fontsize=11;
stylesheet="../_static/graphs.css";
node [fontsize=11,fontname="Arial"]
edge [fontsize=11,fontname="Arial"]
"3" [label=<
| ProcessCuesCollection |
|
ProcessCues | element |
>,shape=box,style=filled,fillcolor="white"];
"4" [label=< | ProcessCues |
|
UINT32 | pid |
OCTET-VECTOR | name |
OCTET-VECTOR | host_name |
ASCII-STRING | command_line |
OCTET-VECTOR | unique_id |
Cues | cues |
Thread | threads |
ProcessCues | children |
>,shape=box,style=filled,fillcolor="white"];
"7" [label=< | ProcessCues |
|
UINT32 | pid |
OCTET-VECTOR | name |
OCTET-VECTOR | host_name |
ASCII-STRING | command_line |
OCTET-VECTOR | unique_id |
Cues | cues |
Thread | threads |
>,shape=box,style=filled,fillcolor="white"];
"9" [label=< | Thread |
|
OCTET-VECTOR | name |
UINT32 | tid |
Cues | cues |
>,shape=box,style=filled,fillcolor="white"];
"8" [label=< | Cues |
|
OCTET-VECTOR | source |
UINT64 | utime |
UINT64 | stime |
INT64 | num_threads |
UINT64 | vsize |
INT64 | rss |
UINT64 | wall_time |
UINT64 | virtual_time |
UINT64 | etime |
UINT64 | utime_scaled |
UINT64 | stime_scaled |
UINT64 | wall_time_scaled |
UINT64 | start_time |
UINT64 | rchar |
UINT64 | wchar |
UINT64 | read_bytes |
UINT64 | write_bytes |
UINT32 | open_fds |
UINT32 | open_files |
UINT32 | open_connections |
UINT64 | received_bytes |
UINT64 | sent_bytes |
>,shape=box,style=filled,fillcolor="white"];
"6" [label=< | Thread |
|
OCTET-VECTOR | name |
UINT32 | tid |
Cues | cues |
>,shape=box,style=filled,fillcolor="white"];
"5" [label=< | Cues |
|
OCTET-VECTOR | source |
UINT64 | utime |
UINT64 | stime |
INT64 | num_threads |
UINT64 | vsize |
INT64 | rss |
UINT64 | wall_time |
UINT64 | virtual_time |
UINT64 | etime |
UINT64 | utime_scaled |
UINT64 | stime_scaled |
UINT64 | wall_time_scaled |
UINT64 | start_time |
UINT64 | rchar |
UINT64 | wchar |
UINT64 | read_bytes |
UINT64 | write_bytes |
UINT32 | open_fds |
UINT32 | open_files |
UINT32 | open_connections |
UINT64 | received_bytes |
UINT64 | sent_bytes |
>,shape=box,style=filled,fillcolor="white"];
"1" [label=< | ProcessAnomalyCollection |
|
ProcessAnomaly | element |
>,shape=box,style=filled,fillcolor="white"];
"2" [label=< | ProcessAnomaly |
|
UINT32 | pid |
OCTET-VECTOR | name |
OCTET-VECTOR | host_name |
ASCII-STRING | reasons |
>,shape=box,style=filled,fillcolor="white"];
"3":element -> "4" [];
"4" -> "6" [];
"4" -> "5" [];
"4":children -> "7" [];
"4":threads -> "6" [];
"4":cues -> "5" [];
"7" -> "9" [];
"7" -> "8" [];
"7":threads -> "9" [];
"7":cues -> "8" [];
"9":cues -> "8" [];
"6":cues -> "5" [];
"1":element -> "2" [];
.. container:: mess4ge-list
.. container:: messages
* :ref:`ProcessAnomalyCollection `
* :ref:`ProcessCuesCollection `
* :ref:`ProcessCues `
* :ref:`ProcessAnomaly `
.. container:: clearer
clearer: should be made invisible via css
.. _message-rst-monitoring-processanomalycollection:
Message ProcessAnomalyCollection
--------------------------------
.. container:: message-rst-monitoring-processanomalycollection-multi
.. container:: message-rst-monitoring-processanomalycollection-documentation
.. py:class:: rst.monitoring.ProcessAnomalyCollection
Collection of :py:class:`ProcessAnomaly ` instances.
Auto-generated.
.. py:attribute:: element
:type: array of :py:class:`rst.monitoring.ProcessAnomaly`
The individual elements of the collection.
Constraints regarding the empty collection, sorting, duplicated
entries etc. are use case specific.
.. container:: message-rst-monitoring-processanomalycollection-source
:download:`Download this file /home/jenkins/workspace/rst-manual-0.14-merge-simulator/upstream/RST-0.14.2-Linux/share/rst0.14/proto/sandbox/rst/monitoring/ProcessAnomalyCollection.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-0.14-merge-simulator/upstream/RST-0.14.2-Linux/share/rst0.14/proto/sandbox/rst/monitoring/ProcessAnomalyCollection.proto
:lines: 12-22
:language: protobuf
:emphasize-lines: 9-9
.. _message-rst-monitoring-processcuescollection:
Message ProcessCuesCollection
-----------------------------
.. container:: message-rst-monitoring-processcuescollection-multi
.. container:: message-rst-monitoring-processcuescollection-documentation
.. py:class:: rst.monitoring.ProcessCuesCollection
Collection of :py:class:`ProcessCues ` instances.
Auto-generated.
.. py:attribute:: element
:type: array of :py:class:`rst.monitoring.ProcessCues`
The individual elements of the collection.
Constraints regarding the empty collection, sorting, duplicated
entries etc. are use case specific.
.. container:: message-rst-monitoring-processcuescollection-source
:download:`Download this file /home/jenkins/workspace/rst-manual-0.14-merge-simulator/upstream/RST-0.14.2-Linux/share/rst0.14/proto/sandbox/rst/monitoring/ProcessCuesCollection.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-0.14-merge-simulator/upstream/RST-0.14.2-Linux/share/rst0.14/proto/sandbox/rst/monitoring/ProcessCuesCollection.proto
:lines: 12-22
:language: protobuf
:emphasize-lines: 9-9
.. _message-rst-monitoring-processcues:
Message ProcessCues
-------------------
.. container:: message-rst-monitoring-processcues-multi
.. container:: message-rst-monitoring-processcues-documentation
.. py:class:: rst.monitoring.ProcessCues
Monitoring-relevant cues about a system process.
.. codeauthor:: Johannes Wienke
.. todo::
this message requires serious abstraction once the
functionality of all cue providers is understood. Do not move
it to stable!
@create_collection
.. py:attribute:: pid
:type: :py:class:`UINT32`
PID of the program.
.. py:attribute:: name
:type: :py:class:`OCTET-VECTOR`
Name of the program (argv[0]).
.. py:attribute:: host_name
:type: :py:class:`OCTET-VECTOR`
Name of the host the program is running on.
.. py:attribute:: command_line
:type: :py:class:`ASCII-STRING`
The complete command line of the program (might include the name, too).
.. py:attribute:: unique_id
:type: :py:class:`OCTET-VECTOR`
A unique id that identifies the exact version of the program that was
monitored. One source for this kind of information might be the build id
from the ELF format on Linux.
.. py:attribute:: cues
:type: array of :py:class:`rst.monitoring.ProcessCues.Cues`
Cues from different sources.
.. py:attribute:: threads
:type: array of :py:class:`rst.monitoring.ProcessCues.Thread`
Thread-specific performance data of requested.
.. py:attribute:: children
:type: array of :py:class:`ProcessCues`
Child processes of this process and their data. The hierarchy of
processes is linearized in this field.
.. container:: message-rst-monitoring-processcues-source
:download:`Download this file /home/jenkins/workspace/rst-manual-0.14-merge-simulator/upstream/RST-0.14.2-Linux/share/rst0.14/proto/sandbox/rst/monitoring/ProcessCues.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-0.14-merge-simulator/upstream/RST-0.14.2-Linux/share/rst0.14/proto/sandbox/rst/monitoring/ProcessCues.proto
:lines: 14-195
:language: protobuf
:emphasize-lines: 6-6,11-11,16-16,21-21,28-28,163-163,174-174,180-180
.. _message-rst-monitoring-processcues-cues:
Message Cues
------------
.. container:: message-rst-monitoring-processcues-cues-multi
.. container:: message-rst-monitoring-processcues-cues-documentation
.. py:class:: rst.monitoring.ProcessCues.Cues
Cues from a single source.
.. py:attribute:: source
:type: :py:class:`OCTET-VECTOR`
Short description of the cue source.
.. py:attribute:: utime
:type: :py:class:`UINT64`
Amount of time that this process has been scheduled in user
mode, [usec], for taskstats this is ac_utime.
.. py:attribute:: stime
:type: :py:class:`UINT64`
Amount of time that this process has been scheduled in
kernel mode, [usec], for taskstats this is ac_stime
.. py:attribute:: num_threads
:type: :py:class:`INT64`
Number of threads in this process.
.. py:attribute:: vsize
:type: :py:class:`UINT64`
Virtual memory size in bytes.
.. py:attribute:: rss
:type: :py:class:`INT64`
Resident Set Size: number of pages the process has in real
memory.
.. py:attribute:: wall_time
:type: :py:class:`UINT64`
Wall-clock time used by this process since
start. [nanoseconds]
.. py:attribute:: virtual_time
:type: :py:class:`UINT64`
Processing time used by this process since start.
[nanoseconds]
.. py:attribute:: etime
:type: :py:class:`UINT64`
Elapsed time (from taskstats). [usec]
.. py:attribute:: utime_scaled
:type: :py:class:`UINT64`
*Not documented*
.. py:attribute:: stime_scaled
:type: :py:class:`UINT64`
*Not documented*
.. py:attribute:: wall_time_scaled
:type: :py:class:`UINT64`
*Not documented*
.. py:attribute:: start_time
:type: :py:class:`UINT64`
Start time of the process or thread. [usec] since unix epoche.
.. py:attribute:: rchar
:type: :py:class:`UINT64`
IO stuff
The number of bytes which this task has caused to be read
from storage. This is simply the sum of bytes which this
process passed to read() and pread(). It includes things
like tty IO and it is unaffected by whether or not actual
physical disk IO was required
.. py:attribute:: wchar
:type: :py:class:`UINT64`
The number of bytes which this task has caused, or shall
cause to be written to disk.
Similar caveats apply here as with rchar.
.. py:attribute:: read_bytes
:type: :py:class:`UINT64`
Attempt to count the number of bytes which this process
really did cause to be fetched from the storage layer. Done
at the submit_bio() level, so it is accurate for
block-backed filesystems.
.. py:attribute:: write_bytes
:type: :py:class:`UINT64`
Attempt to count the number of bytes which this process
caused to be sent to the storage layer. This is done at
page-dirtying time.
.. py:attribute:: open_fds
:type: :py:class:`UINT32`
The number of open file descriptors including everything like
sockets and pipes.
.. py:attribute:: open_files
:type: :py:class:`UINT32`
The number of open files (real files, not sockets etc) a process
possesses.
.. py:attribute:: open_connections
:type: :py:class:`UINT32`
The number of open network connections. This includes TCP/IP and UDP
traffic on IPv4 and IPv6.
.. py:attribute:: received_bytes
:type: :py:class:`UINT64`
Number of bytes received via network.
.. py:attribute:: sent_bytes
:type: :py:class:`UINT64`
Number of bytes sent via network.
.. container:: message-rst-monitoring-processcues-cues-source
:download:`Download this file /home/jenkins/workspace/rst-manual-0.14-merge-simulator/upstream/RST-0.14.2-Linux/share/rst0.14/proto/sandbox/rst/monitoring/ProcessCues.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-0.14-merge-simulator/upstream/RST-0.14.2-Linux/share/rst0.14/proto/sandbox/rst/monitoring/ProcessCues.proto
:lines: 46-171
:language: protobuf
:emphasize-lines: 6-6,12-12,18-18,23-23,28-28,34-34,40-40,46-46,51-51,53-53,55-55,57-57,62-62,73-73,81-81,89-89,96-96,102-102,108-108,114-114,119-119,124-124
.. _message-rst-monitoring-processcues-thread:
Message Thread
--------------
.. container:: message-rst-monitoring-processcues-thread-multi
.. container:: message-rst-monitoring-processcues-thread-documentation
.. py:class:: rst.monitoring.ProcessCues.Thread
*Not documented*
.. py:attribute:: name
:type: :py:class:`OCTET-VECTOR`
*Not documented*
.. py:attribute:: tid
:type: :py:class:`UINT32`
*Not documented*
.. py:attribute:: cues
:type: array of :py:class:`rst.monitoring.ProcessCues.Cues`
*Not documented*
.. container:: message-rst-monitoring-processcues-thread-source
:download:`Download this file /home/jenkins/workspace/rst-manual-0.14-merge-simulator/upstream/RST-0.14.2-Linux/share/rst0.14/proto/sandbox/rst/monitoring/ProcessCues.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-0.14-merge-simulator/upstream/RST-0.14.2-Linux/share/rst0.14/proto/sandbox/rst/monitoring/ProcessCues.proto
:lines: 178-182
:language: protobuf
:emphasize-lines: 2-2,3-3,4-4
.. _message-rst-monitoring-processanomaly:
Message ProcessAnomaly
----------------------
.. container:: message-rst-monitoring-processanomaly-multi
.. container:: message-rst-monitoring-processanomaly-documentation
.. py:class:: rst.monitoring.ProcessAnomaly
Monitoring-relevant cues about a system process.
.. codeauthor:: Johannes Wienke
.. todo::
this message requires serious abstraction once the
functionality of all cue providers is understood. Do not move
it to stable!
@create_collection
A message to describe a detected anomaly inside a system-level process.
.. codeauthor:: Johannes Wienke
.. todo::
this message requires serious abstraction once the
functionality of all cue providers is understood. Do not move
it to stable!
@create_collection
.. py:attribute:: pid
:type: :py:class:`UINT32`
PID of the program.
.. py:attribute:: name
:type: :py:class:`OCTET-VECTOR`
Name of the program (argv[0]).
.. py:attribute:: host_name
:type: :py:class:`OCTET-VECTOR`
Name of the host the program is running on.
.. py:attribute:: reasons
:type: array of :py:class:`ASCII-STRING`
A use-case-dependent list of reasons for the detection of this anomaly.
.. container:: message-rst-monitoring-processanomaly-source
:download:`Download this file /home/jenkins/workspace/rst-manual-0.14-merge-simulator/upstream/RST-0.14.2-Linux/share/rst0.14/proto/sandbox/rst/monitoring/ProcessAnomaly.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-0.14-merge-simulator/upstream/RST-0.14.2-Linux/share/rst0.14/proto/sandbox/rst/monitoring/ProcessAnomaly.proto
:lines: 14-36
:language: protobuf
:emphasize-lines: 6-6,11-11,16-16,21-21