= The External Check Datastore =
== External Check Overview ==
The configuration will list the external datastores that collectors can get data from. In particular, the following URL is provided for a collector to get started at an external check datastore:
This call returns information about what checks are run by this external check store:
* List of aggregate control planes this external check monitors
* List of data plane experiments this external check has
{{{
https://externalcheckstore.gpolab.bbn.com/info/externalcheck/gpo
}}}
Here is an example response:
{{{
{
"$schema": "http://www.gpolab.bbn.com/monitoring/schema/20140501/externalcheck#",
"id": "gpo",
"selfRef": "https://externalcheckstore.gpolab.bbn.com/info/externalcheck/gpo",
"ts": 1397762559284773,
"measRef: "https://externalcheckstore.gpolab.bbn.com/data/",
"experiments": [
{
"href": "https://externalcheckstore.gpolab.bbn.com/info/experiment/missouri_ig_to_gpo_ig"
}
],
"monitored_aggregates": [
{
"id": "gpo-ig",
"href": "https://datastore.instageni.gpolab.bbn.com/info/aggregate/gpo-ig"
},
{
"id": "rci-eg",
"href": "https://rci-hn.exogeni.net/ops-monitoring/info/aggregate/rci-eg"
},
{
"id": "utah-ig",
"href": "https://datastore.utah.geniracks.net:5001/info/aggregate/utah-ig"
}
]
}
}}}
=== Data about a monitoring experiment ===
Operational monitoring measures the dataplane with a set of simple tests between aggregates described using [http://www.gpolab.bbn.com/monitoring/schema/20140501/monitoringexperiment# the operational monitoring experiment schema]. Examples:
Hypothetical REST call for missouri-ig to gpo-ig experiment:
{{{
https://externalcheckstore.gpolab.bbn.com/info/experiment/missouri_ig_to_gpo_ig
}}}
Response:
{{{
{
"$schema": "http://www.gpolab.bbn.com/monitoring/schema/20140501/experiment#",
"id": "missouri-ig_to_gpo-ig",
"selfRef": "https://externalcheckstore.gpolab.bbn.com/info/experiment/missouri_ig_to_gpo_ig",
"slice_urn": "urn:publicid:IDN+ch.geni.net:gpo-infra+slice+tuptyexclusive",
"slice_uuid": "8c6b97fa-493b-400f-95ee-19accfaf4ae8",
"ts": 1391192685740849,
"source_aggregate": {
"urn": "urn:publicid:IDN+instageni.missouri.edu+authority+cm",
"href": "https://datastore.instageni.missouri.edu/info/aggregates/missouri-ig"
},
"destination_aggregate": {
"urn": "urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm",
"href": "https://datastore.instageni.gpolab.bbn.com/info/aggregates/gpo-ig"
}
}}}
== The External Check Datastore part in Monitoring the Control and Data Planes ==
This page describes how monitoring data about more than one aggregate or about the control plane (reaching aggregates) is handled by the distributed operational monitoring architecture.
{{{
#!html
|
Architectural Highlight of a Collector and a Local Datastore
}}}
== Example time-series data calls ==
=== Aggregate is_available Check ===
Here is an example call to the external check datastore for checking if the different aggregates are available:
{{{
https://externalcheckdatastore.gpolab.bbn.com/data/?q={"filters":{"eventType": ["ops_monitoring:is_available"],"ts":{"gte":1391192225475202,"lt":1391192225480000},"obj":{"type":"aggregate","id":["gpo-ig","utah-ig","rci-eg"]}}}}
}}}
{{{
[
{
"$schema": "http://www.gpolab.bbn.com/monitoring/schema/20140501/data#",
"id": "is_available:gpo-ig",
"subject": "https://datastore.instageni.gpolab.bbn.com/info/aggregate/gpo-ig",
"eventType": "ops_monitoring:is_available",
"description": "Is aggregate manager responsive",
"units": "boolean",
"tsdata": [
{ "ts": 1391198716651283, "v": 1 },
{ "ts": 1391198776651284, "v": 1 },
{ "ts": 1391198836651284, "v": 1 },
{ "ts": 1391198896651284, "v": 1 },
{ "ts": 1391198956651284, "v": 1 },
{ "ts": 1391199016651285, "v": 1 }
]
}
,
{
"$schema": "http://www.gpolab.bbn.com/monitoring/schema/20140501/data#",
"id": "is_available:utah-ig",
"subject": "http://datastore.utah.geniracks.net:5001/info/aggregate/utah-ig",
"eventType": "ops_monitoring:is_available",
"description": "Is aggregate manager responsive",
"units": "boolean",
"tsdata": [
{ "ts": 1391198716651283, "v": 1 },
{ "ts": 1391198776651284, "v": 1 },
{ "ts": 1391198836651284, "v": 0 },
{ "ts": 1391198896651284, "v": 0 },
{ "ts": 1391198956651284, "v": 1 },
{ "ts": 1391199016651285, "v": 1 }
]
}
,
{
"$schema": "http://www.gpolab.bbn.com/monitoring/schema/20140501/data#",
"id": "is_available:rci-eg",
"subject": "https://rci-hn.exogeni.net/ops-monitoring/info/aggregate/rci-eg",
"eventType": "ops_monitoring:is_available",
"description": "Is aggregate manager responsive",
"units": "integer",
"tsdata": [
{ "ts": 1391198716651283, "v": 1 },
{ "ts": 1391198776651284, "v": 1 },
{ "ts": 1391198836651284, "v": 1 },
{ "ts": 1391198896651284, "v": 1 },
{ "ts": 1391198956651284, "v": 1 },
{ "ts": 1391199016651285, "v": 1 }
]
}
]
}}}
=== Dataplane Ping Check ===
Here is an example call to the external check datastore for checking dataplane ping times in a monitoring experiment:
{{{
https://externalcheckdatastore.gpolab.bbn.com/data/?q={"filters":{"eventType": ["ops_monitoring:ping_rtt_ms"],"ts":{"gte":1391192225475202,"lt":1391192225480000},"obj":{"type":"experiment","id":["missouri-ig_to_gpo-ig","utah-ig_to_gpo-ig","missouri-ig_to_utah-ig"]}}}}
}}}
{{{
[
{
"$schema": "http://www.gpolab.bbn.com/monitoring/schema/20140501/data#",
"id": "ping_rtt_ms:missouri-ig_to_gpo-ig",
"subject": "https://datastore.externalchecks.geni.net/info/experiment/missouri-ig_to_gpo-ig",
"eventType": "ops_monitoring:ping_rtt_ms",
"description": "RTT for ping between aggregates in the dataplane",
"units": "milliseconds",
"tsdata": [
{ "ts": 1391198716651283, "v": 50.6 },
{ "ts": 1391198776651284, "v": 52.1 },
{ "ts": 1391198836651284, "v": 40.6 },
{ "ts": 1391198896651284, "v": 154.8 },
{ "ts": 1391198956651284, "v": 120.9 },
{ "ts": 1391199016651285, "v": 120.0 }
]
}
,
{
"$schema": "http://www.gpolab.bbn.com/monitoring/schema/20140501/data#",
"id": "ping_rtt_ms:utah-ig_to_gpo-ig",
"subject": "https://datastore.externalchecks.geni.net/info/experiment/utah-ig_to_gpo-ig",
"eventType": "ops_monitoring:ping_rtt_ms",
"description": "RTT for ping between aggregates in the dataplane",
"units": "milliseconds",
"tsdata": [
{ "ts": 1391198716651283, "v": 50.6 },
{ "ts": 1391198776651284, "v": 52.1 },
{ "ts": 1391198836651284, "v": 40.6 },
{ "ts": 1391198896651284, "v": 154.8 },
{ "ts": 1391198956651284, "v": 120.9 },
{ "ts": 1391199016651285, "v": 120.0 }
]
}
,
{
"$schema": "http://www.gpolab.bbn.com/monitoring/schema/20140501/data#",
"id": "ping_rtt_ms:missouri-ig_to_utah-ig",
"subject": "https://datastore.externalchecks.geni.net/info/experiment/missouri-ig_to_utah-ig",
"eventType": "ops_monitoring:ping_rtt_ms",
"description": "RTT for ping between aggregates in the dataplane",
"units": "milliseconds",
"tsdata": [
{ "ts": 1391198716651283, "v": 50.6 },
{ "ts": 1391198776651284, "v": 52.1 },
{ "ts": 1391198836651284, "v": 40.6 },
{ "ts": 1391198896651284, "v": 154.8 },
{ "ts": 1391198956651284, "v": 120.9 },
{ "ts": 1391199016651285, "v": 120.0 }
]
}
]
}}}