eagle-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ralp...@apache.org
Subject [1/2] incubator-eagle git commit: [EAGLE-585] : AlertEngine: create metadata validation api
Date Sun, 02 Oct 2016 16:23:52 GMT
Repository: incubator-eagle
Updated Branches:
  refs/heads/master f6fad2ebe -> 4f348e3dc


http://git-wip-us.apache.org/repos/asf/incubator-eagle/blob/4f348e3d/eagle-core/eagle-alert-parent/eagle-alert/alert-coordinator/src/test/resources/validation/streamdefinitions.json
----------------------------------------------------------------------
diff --git a/eagle-core/eagle-alert-parent/eagle-alert/alert-coordinator/src/test/resources/validation/streamdefinitions.json b/eagle-core/eagle-alert-parent/eagle-alert/alert-coordinator/src/test/resources/validation/streamdefinitions.json
new file mode 100644
index 0000000..7293755
--- /dev/null
+++ b/eagle-core/eagle-alert-parent/eagle-alert/alert-coordinator/src/test/resources/validation/streamdefinitions.json
@@ -0,0 +1,2218 @@
+[
+  {
+    "streamId":"correlatedAlertStream",
+    "dataSource":"network_sherlock_alert_datasource",
+    "description":"The template correlated *OUTPUT* data stream schema for network correlation",
+    "validate":false,
+    "timeseries":false,
+    "columns":[
+      {
+        "name":"docId",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":"the docId for correlated alerts"
+      },
+      {
+        "name":"firstOccurenceTime",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":true,
+        "description":"firstOccurTime for correlated alert"
+      },
+      {
+        "name":"endTime",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":true,
+        "description":"the end time of correlated alert, 0 as default"
+      },
+      {
+        "name":"alertKey",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":"the alert key for correlated alert"
+      },
+      {
+        "name":"parentKey",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":"the parent key for correlated alert"
+      },
+      {
+        "name":"state",
+        "type":"STRING",
+        "defaultValue":"closed",
+        "required":true,
+        "description":"the alert state"
+      },
+      {
+        "name":"name",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"namespace",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"timestamp",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"severity",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":"severity for correlated alert"
+      },
+      {
+        "name":"alertSource",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"streamName",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"entity",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"entityType",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"ip",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"pod",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"bubble",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"dc",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"component",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"componentType",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"status",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"alertSource",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"cause",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"message",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"linkedPort",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"linkedSwitch",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      }
+    ]
+  },
+  {
+    "streamId":"deviceDownAlertStream",
+    "dataSource":"correlatedSource",
+    "description":"Stream definition for symptomatic parent alerts",
+    "validate":false,
+    "timeseries":false,
+    "columns":[
+      {
+        "name":"docId",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":"the docId for correlated alerts"
+      },
+      {
+        "name":"parentKey",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":"the parent key for correlated alert"
+      },
+      {
+        "name":"state",
+        "type":"STRING",
+        "defaultValue":"closed",
+        "required":true,
+        "description":"the alert state"
+      },
+      {
+        "name":"name",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"namespace",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"timestamp",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"severity",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":"severity for correlated alert"
+      },
+      {
+        "name":"streamName",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"entity",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"pod",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"bubble",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"dc",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"cause",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"message",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      }
+    ]
+  },
+  {
+    "streamId":"syslogEventStream",
+    "dataSource":"network_syslog_event_datasource",
+    "description":"the data stream for syslog events",
+    "validate":false,
+    "timeseries":false,
+    "columns":[
+      {
+        "name":"timestamp",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"name",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"namespace",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dims_hostname",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dims_appname",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"msg",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"procid",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"msgid",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"facility_code",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"severity_code",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"severity_name",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"pod",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"ip",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"bubble",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"entityType",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"productionLevel",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"state",
+        "type":"STRING",
+        "defaultValue":"closed",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"entity",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"status",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dc",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dedupCount",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":false
+      },
+      {
+        "name":"dedupFirstOccurrenceTime",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":false
+      },
+      {
+        "name":"alertKey",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"parentKey",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"alertSource",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"docId",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":"the docId for aggregated alerts"
+      },
+      {
+        "name":"component",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"componentType",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"linkedPort",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"linkedSwitch",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"localPort",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"cause",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"message",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      }
+    ]
+  },
+  {
+    "streamId":"ncAlertStream",
+    "dataSource":"network_NC_alert_datasource",
+    "description":"the nerve center alert stream",
+    "validate":false,
+    "timeseries":false,
+    "columns":[
+      {
+        "name":"timestamp",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"name",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"namespace",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"alertKey",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"parentKey",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dims_component",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dims_pod",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dims_bubble",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dims_entity",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dims_dc",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"severity",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"componentType",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"entityType",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"source",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"message",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"key",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"linkedSwitch",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"localPort",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"pod",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"alertSource",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"ip",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"component",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"linkedPort",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"bubble",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"state",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"entity",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"status",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dc",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dedupCount",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":false
+      },
+      {
+        "name":"dedupFirstOccurrenceTime",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":false
+      },
+      {
+        "name":"docId",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":"the docId for aggregated alerts"
+      },
+      {
+        "name":"monitor",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"cause",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      }
+    ]
+  },
+  {
+    "streamId":"sherlockAlertStream",
+    "dataSource":"network_sherlock_alert_datasource",
+    "description":"the sherlock alert stream",
+    "validate":false,
+    "timeseries":false,
+    "columns":[
+      {
+        "name":"docId",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":"the docId for aggregated alerts"
+      },
+      {
+        "name":"timestamp",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"name",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"namespace",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"alertKey",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"parentKey",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dims_device",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dims_ifAlias",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dims_bubble",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dims_pod",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dims_dc",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"source",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"currState",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"msg",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"prevState",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"type",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"kind",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"switchtype",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"debouncer_type",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"debouncer_value",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"current_value",
+        "type":"DOUBLE",
+        "defaultValue":0,
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"current_execursion",
+        "type":"DOUBLE",
+        "defaultValue":0,
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"threshold_execursion",
+        "type":"DOUBLE",
+        "defaultValue":0,
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"operation",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"severity",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"componentType",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"linkedSwitch",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"localPort",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"pod",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"alertSource",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"entityType",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"ip",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"component",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"linkedPort",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"bubble",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"state",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"entity",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"status",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dc",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dedupCount",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":false
+      },
+      {
+        "name":"dedupFirstOccurrenceTime",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":false
+      },
+      {
+        "name":"cause",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"message",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      }
+    ]
+  },
+  {
+    "streamId":"syslogAlertOutputStream",
+    "dataSource":"network_aggregate_alert_output_datasource",
+    "description":"the data stream for syslog events to loopback",
+    "validate":false,
+    "timeseries":false,
+    "columns":[
+      {
+        "name":"timestamp",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"name",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"namespace",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"hostname",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"appname",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"msg",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"procid",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"msgid",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"facility_code",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"facility_name",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"severity_code",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"severity",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"pod",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"ip",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"bubble",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"entityType",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"productionLevel",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"state",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"entity",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"status",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dc",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dedupCount",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":false
+      },
+      {
+        "name":"dedupFirstOccurrenceTime",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":false
+      },
+      {
+        "name":"alertKey",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"parentKey",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"alertSource",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"docId",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":"the docId for aggregated alerts"
+      },
+      {
+        "name":"policyId",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"streamId",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"streamName",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"cause",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"component",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"componentType",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"linkedPort",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"linkedSwitch",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"localPort",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"cause",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"message",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      }
+    ]
+  },
+  {
+    "streamId":"ncAlertOutputStream",
+    "dataSource":"network_aggregate_alert_output_datasource",
+    "description":"the nerve center alert stream to loopback",
+    "validate":false,
+    "timeseries":false,
+    "columns":[
+      {
+        "name":"timestamp",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"name",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"namespace",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"alertKey",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"parentKey",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"severity",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"componentType",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"entityType",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"source",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"message",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"key",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"linkedSwitch",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"localPort",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"pod",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"alertSource",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"ip",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"component",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"linkedPort",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"bubble",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"state",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"entity",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"status",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dc",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dedupCount",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":false
+      },
+      {
+        "name":"dedupFirstOccurrenceTime",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":false
+      },
+      {
+        "name":"docId",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":"the docId for aggregated alerts"
+      },
+      {
+        "name":"policyId",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"streamId",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"streamName",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"monitor",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"cause",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      }
+    ]
+  },
+  {
+    "streamId":"sherlockAlertOutputStream",
+    "dataSource":"network_aggregate_alert_output_datasource",
+    "description":"the sherlock alert stream to loopback",
+    "validate":false,
+    "timeseries":false,
+    "columns":[
+      {
+        "name":"docId",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":"the docId for aggregated alerts"
+      },
+      {
+        "name":"timestamp",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"name",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"namespace",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"alertKey",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"parentKey",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"device",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"ifAlias",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"source",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"currState",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"msg",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"prevState",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"type",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"kind",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"switchtype",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"debouncer_type",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"debouncer_value",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"current_value",
+        "type":"DOUBLE",
+        "defaultValue":0,
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"current_execursion",
+        "type":"DOUBLE",
+        "defaultValue":0,
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"threshold_execursion",
+        "type":"DOUBLE",
+        "defaultValue":0,
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"operation",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"severity",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"componentType",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"linkedSwitch",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"localPort",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"pod",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"alertSource",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"entityType",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"ip",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"component",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"linkedPort",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"bubble",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"state",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"entity",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"status",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dc",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"dedupCount",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":false
+      },
+      {
+        "name":"dedupFirstOccurrenceTime",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":false
+      },
+      {
+        "name":"policyId",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"streamId",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"streamName",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"cause",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"message",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      }
+    ]
+  },
+  {
+    "streamId":"aggregatedAlertStream",
+    "dataSource":"network_aggregate_alert_output_datasource",
+    "description":"The template aggregated *OUTPUT* data stream schema for network aggregation",
+    "validate":false,
+    "timeseries":false,
+    "columns":[
+      {
+        "name":"docId",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":"the docId for aggregated alerts"
+      },
+      {
+        "name":"firstOccurenceTime",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":true,
+        "description":"firstOccurTime for aggregated alert"
+      },
+      {
+        "name":"endTime",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":true,
+        "description":"the end time of aggregated alert, 0 as default"
+      },
+      {
+        "name":"alertKey",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":"the alert key for aggregated alert"
+      },
+      {
+        "name":"parentKey",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":"the parent key for aggregated alert"
+      },
+      {
+        "name":"state",
+        "type":"STRING",
+        "defaultValue":"closed",
+        "required":true,
+        "description":"the alert state"
+      },
+      {
+        "name":"name",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"namespace",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"timestamp",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"severity",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":"severity for aggregated alert"
+      },
+      {
+        "name":"alertSource",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"streamName",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"entity",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"entityType",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"ip",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"pod",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"bubble",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"dc",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"component",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"componentType",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"status",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"alertSource",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"cause",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"message",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"linkedPort",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"linkedSwitch",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      }
+    ]
+  },
+  {
+    "streamId":"symptomaticAlertOutputStream",
+    "dataSource":"correlatedSource",
+    "description":"Stream definition for symptomatic child alerts",
+    "validate":false,
+    "timeseries":false,
+    "columns":[
+      {
+        "name":"docId",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":"the docId for correlated alerts"
+      },
+      {
+        "name":"firstOccurenceTime",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":true,
+        "description":"firstOccurTime for correlated alert"
+      },
+      {
+        "name":"endTime",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":true,
+        "description":"the end time of correlated alert, 0 as default"
+      },
+      {
+        "name":"alertKey",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":"the alert key for correlated alert"
+      },
+      {
+        "name":"parentKey",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":"the parent key for correlated alert"
+      },
+      {
+        "name":"state",
+        "type":"STRING",
+        "defaultValue":"closed",
+        "required":true,
+        "description":"the alert state"
+      },
+      {
+        "name":"name",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"namespace",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"timestamp",
+        "type":"LONG",
+        "defaultValue":0,
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"severity",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":"severity for correlated alert"
+      },
+      {
+        "name":"alertSource",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"streamName",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"entity",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"entityType",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"ip",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"pod",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"bubble",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"dc",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"component",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"componentType",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"status",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":false
+      },
+      {
+        "name":"cause",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"message",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"linkedPort",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      },
+      {
+        "name":"linkedSwitch",
+        "type":"STRING",
+        "defaultValue":"",
+        "required":true,
+        "description":""
+      }
+    ]
+  }
+]
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-eagle/blob/4f348e3d/eagle-core/eagle-alert-parent/eagle-alert/alert-coordinator/src/test/resources/validation/topologies.json
----------------------------------------------------------------------
diff --git a/eagle-core/eagle-alert-parent/eagle-alert/alert-coordinator/src/test/resources/validation/topologies.json b/eagle-core/eagle-alert-parent/eagle-alert/alert-coordinator/src/test/resources/validation/topologies.json
new file mode 100644
index 0000000..bf2e1d3
--- /dev/null
+++ b/eagle-core/eagle-alert-parent/eagle-alert/alert-coordinator/src/test/resources/validation/topologies.json
@@ -0,0 +1,42 @@
+[
+  {
+    "name":"alertUnitTopology_1",
+    "numOfSpout":1,
+    "numOfAlertBolt":20,
+    "numOfGroupBolt":4,
+    "numOfPublishBolt":1,
+    "spoutId":"alertEngineSpout",
+    "pubBoltId":"alertPublishBolt",
+    "groupNodeIds":[
+      "streamRouterBolt0",
+      "streamRouterBolt1",
+      "streamRouterBolt2",
+      "streamRouterBolt3"
+    ],
+    "alertBoltIds":[
+      "alertBolt0",
+      "alertBolt9",
+      "alertBolt18",
+      "alertBolt19",
+      "alertBolt1",
+      "alertBolt12",
+      "alertBolt2",
+      "alertBolt13",
+      "alertBolt3",
+      "alertBolt10",
+      "alertBolt4",
+      "alertBolt11",
+      "alertBolt5",
+      "alertBolt16",
+      "alertBolt6",
+      "alertBolt17",
+      "alertBolt7",
+      "alertBolt14",
+      "alertBolt8",
+      "alertBolt15"
+    ],
+    "spoutParallelism":1,
+    "groupParallelism":1,
+    "alertParallelism":1
+  }
+]
\ No newline at end of file


Mime
View raw message