Last modified 4 years ago
Last modified on 06/04/2014 10:28:03 AM
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 | ||||
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 | big integer | ||||
rx_packets | big integer | ||||
tx_bytes | big integer | ||||
rx_bytes | big integer | ||||
tx_errors | big integer | ||||
rx_errors | big integer | ||||
tx_drops | big integer | ||||
rx_drops | big integer | ||||
mtu | integer | ||||
WifiInterfaceMonitor (InterfaceMonitor) | |||||
mode | registered choice | ||||
essid | string | ||||
bssid | bssid string | ||||
protocol | string | ||||
channel | integer | ||||
channel_width | integer | ||||
bitrate | integer | ||||
rts_threshold | integer | ||||
frag_threshold | integer | ||||
signal | integer | ||||
noise | integer | ||||
snr | float | ||||
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) | ||||
link_count | integer | ||||
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 | ||||
rtt_minimum | float | ||||
rtt_average | float | ||||
rtt_maximum | float | ||||
rtt_std | 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 | |||
family | registered choice | ||
address | ip address | ||
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 |