Difference between revisions of "Monasca/Message Schema"
Line 5: | Line 5: | ||
|- | |- | ||
! Message !! Produced By !! Consumed By !! Kafka Topic !! Description | ! Message !! Produced By !! Consumed By !! Kafka Topic !! Description | ||
− | |||
− | |||
|- | |- | ||
| AlarmDefinitionCreatedEvent || API || Threshold Engine || events || When an alarm definition is created by the API an AlarmDefinitionCreatedEvent is published to the MessageQ. | | AlarmDefinitionCreatedEvent || API || Threshold Engine || events || When an alarm definition is created by the API an AlarmDefinitionCreatedEvent is published to the MessageQ. | ||
Line 23: | Line 21: | ||
|- | |- | ||
| AlarmNotification || Notification Engine || Persister || alarm-notifications || This event is published to the MessageQ when the notification engine processes an alarm and sends a notification. The alarm notification is persisted by the Persister and can be queried by the Monitoring API. The database maintains a history of all events. | | AlarmNotification || Notification Engine || Persister || alarm-notifications || This event is published to the MessageQ when the notification engine processes an alarm and sends a notification. The alarm notification is persisted by the Persister and can be queried by the Monitoring API. The database maintains a history of all events. | ||
+ | |- | ||
+ | | Metric || API, Transform and Aggregation Engine || Persister, Threshold Engine || metrics || A metric sent to the API or created by the Transform Engine, Event Engine or Anomaly Engine is published to the MessageQ. | ||
+ | |- | ||
+ | | Event || API, Transform Engine, Event Engine || Persister, Event Engine || raw-events, transformed-events || An event sent to the API or created by the Transform Engine or Event Engine or is published to the MessageQ. | ||
|} | |} | ||
Revision as of 02:05, 14 January 2015
Contents
Message Schema
There are several messages that are published and consumed by various components in Monasca via the MessageQ.
Message | Produced By | Consumed By | Kafka Topic | Description |
---|---|---|---|---|
AlarmDefinitionCreatedEvent | API | Threshold Engine | events | When an alarm definition is created by the API an AlarmDefinitionCreatedEvent is published to the MessageQ. |
AlarmDefinitionDeletedEvent | API | Threshold Engine | events | When an alarm definition is deleted by the API an AlarmDefinitionDeletedEvent is published to the MessageQ. |
AlarmDefinitionUpdatedEvent | API | Threshold Engine | events | When an alarm definition is updated by the API an AlarmDefinitionUpdatedEvent is published to the MessageQ. |
AlarmCreatedEvent | Threshold Engine | events | When an alarm is created by the Threshold Engine an AlarmCreatedEvent is published to the MessageQ. | |
AlarmDeletedEvent | API | Threshold Engine | events | When an alarm is deleted by the API an AlarmDeletedEvent is published to the MessageQ. |
AlarmUpdatedEvent | API | Threshold Engine | events | When an alarm is updated by the API an AlarmUpdatedEvent is published to the MessageQ. |
AlarmStateTransitionedEvent | Threshold Engine | Notification Engine, Persister | alarm-state-transitions | When an alarm transitions from the OK to Alarmed, Alarmed to OK, ..., this event is published to the MessageQ and persisted by the persister and processed by the Notification Engine. The Monitoring API can query the history of alarm state transition events. |
AlarmNotification | Notification Engine | Persister | alarm-notifications | This event is published to the MessageQ when the notification engine processes an alarm and sends a notification. The alarm notification is persisted by the Persister and can be queried by the Monitoring API. The database maintains a history of all events. |
Metric | API, Transform and Aggregation Engine | Persister, Threshold Engine | metrics | A metric sent to the API or created by the Transform Engine, Event Engine or Anomaly Engine is published to the MessageQ. |
Event | API, Transform Engine, Event Engine | Persister, Event Engine | raw-events, transformed-events | An event sent to the API or created by the Transform Engine or Event Engine or is published to the MessageQ. |
Alarm Definition Events
AlarmDefinitionCreatedEvent
String tenantId String alarmDefinitionId String alarmName String alarmDescription String alarmExpression Map<String, AlarmSubExpression> alarmSubExpressions List<String> matchBy
AlarmDefinitionDeletedEvent
String alarmDefinitionId Map<String, MetricDefinition> subAlarmMetricDefinitions
AlarmDefinitionUpdatedEvent
String tenantId String alarmDefinitionId String alarmName String alarmDescription String alarmExpression String severity List<String> matchBy boolean alarmActionsEnabled Map<String, AlarmSubExpression> oldAlarmSubExpressions Map<String, AlarmSubExpression> changedSubExpressions Map<String, AlarmSubExpression> unchangedSubExpressions Map<String, AlarmSubExpression> newAlarmSubExpressions
Alarm Events
AlarmCreatedEvent
String tenantId String alarmId String alarmName String alarmExpression Map<String, AlarmSubExpression> alarmSubExpressions
AlarmDeletedEvent
String tenantId String alarmId List<MetricDefinition> alarmMetrics String alarmDefinitionId Map<String, AlarmSubExpression> subAlarms
AlarmStateTransitionedEvent
String tenantId String alarmId String alarmDefinitionId List<MetricDefinition> metrics String alarmName String alarmDescription AlarmState oldState AlarmState newState boolean actionsEnabled String stateChangeReason String severity long timestamp
AlarmUpdatedEvent
String alarmId String tenantId String alarmDefinitionId List<MetricDefinition> alarmMetrics Map<String, AlarmSubExpression> subAlarms AlarmState alarmState AlarmState oldAlarmState
Metrics Message
Event Message
Types
AlarmSubExpression
AggregateFunction function MetricDefinition metricDefinition
AlarmOperator operator double threshold threshold int period int periods
MetricDefinition
String name Map<String, String> dimensions
enum AlarmState
UNDETERMINED OK ALARM