- A system is a set of connected components
The definition of connected and components is missing. I think we can go with definitions like:
- A components is a set of processes (in the OS sense)
- Two components are connected if they can talk to each other (over a network or IPC).
Example: A LAMP system, consists of components:
- component: Apache web-server
- component: MySQL db
- connected over TCP/localhost
- The manner in which a system behaves is it's behavior.
This is an empty definition.
- One or more sensors observe the state of a component
Better: Sensors are processes?/functions?/classes? that collect data about a component.
Examples:
- collectd plugins ?!
- /healz endpoint ?!
- The outputs of a system are the concrete results of its behaviors.
- A system is observabe if you can determine the behavior of the system based on it's outputs.
- An agent inteprets data emitted by a sensor
- Monitoring is the action of observing and checking the behavior and output of a system and its components over time.
- [1] Greg Poirier - https://speakerdeck.com/grepory/monitoring-is-dead
- [2] Greg Poirier - https://github.com/grepory/monitorama2016