Last modified 8 months ago
Last modified on 10/07/2011 12:57:35 PM
Monitoring Registry
This page is for future nodewatcher version currently in development.
The monitoring registry uses the same modular registry framework as the configuration registry. Its registration point is node.monitoring. In contrast to configuration its purpuse is storage of per-node information that is obtained via live reports from nodes and routing daemons. The registry framework is reused because monitoring must also be as modular and extensible as possible.
All registry item class names in this schema must end in Monitor.
Core Schema
| REGISTRY ID | MULTIPLE | CLASS | FIELD | TYPE | |
| core.general | no | ||||
| GeneralMonitor | |||||
| first_seen | datetime | ||||
| last_seen | datetime | ||||
| CgmGeneralMonitor (GeneralMonitor) | |||||
| uuid | uuid | ||||
| firmware | string | ||||
| core.status | no | ||||
| StatusMonitor | |||||
| status | registered choice | ||||
| has_warnings | boolean | ||||
| core.interfaces | yes | ||||
| InterfaceMonitor | |||||
| name | string | ||||
| hw_address | hardware address string | ||||
| tx_packets | integer | ||||
| rx_packets | integer | ||||
| tx_bytes | integer | ||||
| rx_bytes | integer | ||||
| WifiInterfaceMonitor (InterfaceMonitor) | |||||
| mode | registered choice | ||||
| essid | string | ||||
| bssid | bssid string | ||||
| protocol | registered choice | ||||
| channel | registered choice | ||||
| channel_width | registered choice | ||||
| bitrate | registered choice | ||||
| rts_threshold | integer | ||||
| frag_threshold | integer | ||||
| signal | integer | ||||
| noise | integer | ||||
| snr | integer | ||||
| core.interfaces.network | yes | ||||
| NetworkInterfaceMonitor | |||||
| interface | intra-registry foreign key (core.interfaces) | ||||
| family | registered choice | ||||
| address | family-based network address | ||||
| core.interfaces.limits | yes | ||||
| InterfaceLimitMonitor (hidden registry anchor) | |||||
| interface | intra-registry foreign key (core.interfaces) | ||||
| ThroughputInterfaceLimitMonitor (InterfaceLimitMonitor) | |||||
| limit_in | registered choice | ||||
| limit_out | registered choice | ||||
| system.status | no | ||||
| SystemStatusMonitor | |||||
| uptime | integer | ||||
| local_time | datetime | ||||
| system.resources.general | no | ||||
| GeneralResourcesMonitor | |||||
| loadavg_1min | float | ||||
| loadavg_5min | float | ||||
| loadavg_15min | float | ||||
| memory_free | integer | ||||
| memory_buffers | integer | ||||
| memory_cache | integer | ||||
| processes | integer | ||||
| system.resources.network | no | ||||
| NetworkResourcesMonitor | |||||
| routes | integer | ||||
| tcp_connections | integer | ||||
| udp_connections | integer | ||||
| system.checks | no | ||||
| ChecksMonitor | |||||
| dns | boolean | ||||
| connectivity_losses | integer | ||||
| wifi_errors | integer | ||||
| network.routing.topology | yes | ||||
| multiple entries when using multiple routing protocols at once | |||||
| RoutingTopologyMonitor | |||||
| links | related field (TopologyLink) | ||||
| OlsrRoutingTopologyMonitor (RoutingTopologyMonitor) | |||||
| network.routing.announces | yes | ||||
| RoutingAnnounceMonitor | |||||
| network | ip network | ||||
| status | registered choice | ||||
| network.measurement.rtt | yes | ||||
| multiple entries for measurements with different packet sizes | |||||
| RttMeasurementMonitor (Measurement) | |||||
| packet_size | integer | ||||
| packet_loss | integer | ||||
| all_packets | integer | ||||
| successful_packets | integer | ||||
| failed_packets | integer | ||||
| minimum | float | ||||
| average | float | ||||
| maximum | float | ||||
| network.clients | yes | ||||
| multiple entries, one entry for each client | |||||
| ClientMonitor | |||||
| client_id | client id | ||||
| addresses | many to many (ClientAddress) | ||||
For explanations of exotic types see registry types.
Auxilary Models
Models
| MODEL | FIELD | TYPE | |
| monitor.TopologyLink (polymorphic) | |||
| monitor | foreign key (RoutingTopologyMonitor) (related name links) | ||
| peer | foreign key (Node) (related name links) | ||
| monitor.OlsrTopologyLink (TopologyLink) | |||
| lq | float | ||
| ilq | float | ||
| etx | float | ||
| monitor.ClientAddress | |||
| address | ip address | ||
| allocated_time | datetime | ||
| expires_time | datetime | ||
Mixins
| MODEL | FIELD | TYPE | |
| monitor.Measurement used by all models under network.measurement registry ID | |||
| source | foreign key (Node) | ||
| start | datetime | ||
| end | datetime | ||
Optional Schema
| REGISTRY ID | MULTIPLE | CLASS | FIELD | TYPE | |
| carma | yes | ||||
| multiple entries when using multiple carma counters at once | |||||
| CarmaMonitor | |||||
| uptime_points | integer | ||||
| clients | integer | ||||
| clients_points | integer | ||||
| sensors | yes | ||||
| SensorMonitor | |||||
| serial | string | ||||
| TemperatureSensorMonitor (SensorMonitor) | |||||
| temperature | float | ||||
| VoltageSensorMonitor (SensorMonitor) | |||||
| voltage | float | ||||
| CurrentSensorMonitor (SensorMonitor) | |||||
| current | float | ||||
| SolarSensorMonitor (SensorMonitor) | |||||
| charging_state | choice (boost, equalize, absorption, float) | ||||
| battery_voltage | float | ||||
| panel_voltage | float | ||||
| charge_current | float | ||||
| load_current | float | ||||
| survey | yes | ||||
| WifiSurveyMonitor | |||||
| mode | registered choice | ||||
| essid | string | ||||
| bssid | bssid string | ||||
| encryption | registered choice | ||||
| channel | registered choice | ||||
| channel_width | registered choice | ||||
| bitrate | registered choice | ||||
| signal | integer | ||||
| noise | integer | ||||
| snr | integer | ||||
