Events Hierarchy Author: Anna Bekkerman [email protected] Events Are Everywhere Node Client Server Target system Data Events LMM Node LMM Node Client LMM Basic Types Messaging events – – Application events – Occur when data is being read from/written to communication channels.
Download ReportTranscript Events Hierarchy Author: Anna Bekkerman [email protected] Events Are Everywhere Node Client Server Target system Data Events LMM Node LMM Node Client LMM Basic Types Messaging events – – Application events – Occur when data is being read from/written to communication channels.
Events Hierarchy Author: Anna Bekkerman [email protected] Events Are Everywhere Node Client Server Target system Data Events LMM Node LMM Node Client LMM Basic Types Messaging events – – Application events – Occur when data is being read from/written to communication channels used in the DCAS system Can be matched to form messages Generated by DCAS applications Metrics – Measurements of resource utilization Messaging Events’ Characteristics Type Communication Channel How They Are Obtained LDM LDM product queue WDSS WDSS-II linear buffer Socket TCP connection Wrappers for LDM function calls Wrappers for WDSS-II function calls RAPIDS API calls LDM Events Each event has a number of properties – – – – – Type: pq_insert or pq_remove Feed type: class of a data product coming from a common source Sequence number associated with the data product Product size: number of bytes in data section of the product Product ID: usually a string describing a product For example: “Reflectivity_20070603_0112.netcdf.gz” Two LDM events are matched if their types are different and the rest of the properties are equal – – Source: pq_insert Destination: pq_remove WDSS Events Each event has a number of properties – – – Type: lb_read or lb_write Linear buffer ID: a number associated with the linear buffer Message length – Linear buffers contain messages describing which products/meteorological features have been processed Message: a string describing a product/feature Two WDSS events are matched if their types are different and messages are equal – – Source: lb_write Destination: lb_read Socket Events Each event has a number of properties – – – – – – Type: socket_write or socket_read Sender address and port Receiver address and port Sequence number associated with the message Message length Message For example: “control”, “features” Two socket events are matched if their types are different and the rest of the properties are equal – – Source: socket_write Destination: socket_read Application Events Must be explicitly generated using RAPIDS API calls Need not be matched Types: – – – – Error Variable Algorithm Debug Error events Generated when an error occurs Have three significance levels – Warning, Severe and Fatal On the message diagram are depicted with cross ( ) Variable events Generated to report the current value of a variable On the message diagram are depicted with five pointed star ( ) Algorithm events Have a type associated with them: start and end Generated to report beginning/ending of some action – Algorithm, procedure, cycle etc. On the message diagram are depicted with: – – Start: small arrow pointing up ( ) End: small arrow pointing down ( ) Dedug events Generated to report debug messages On the message diagram are depicted with vertical bar ( ) Common Properties Each messaging and application event has the following properties: – – – Timestamp PID and name of the process which generated the event ID of the node where the event came from Detailed information about events can be obtained: – – From log files From the message diagram if RAPIDS visualization client is employed to view the events Obtaining Process Name signatures Events know names of the processes which generated them The name of a process might be very long! Solution: generate a signature for the process name and send it along with the events When RAPIDS server receives an event it compares its process signature with signatures of monitored processes provided in the configuration file Drawback: if a process has not been mentioned in the configuration file, its events will be ignored – Even ownerless events are logged! Metrics Each metric has a key and value Process metrics also have a PIDs Often a group of metrics must be used to calculate utilization of a resource – For example: to calculate utilization of the memory the following metrics are needed The amount of free and used physical memory The amount of free and used swap memory Implementation of Events Hierarchy event byte[] toBytes() int nodeID; Date occurredAt; String processName; int mark; <<interface>> Loggable int key; Object value; Event DiagramEvent Metric boolean correspondTo(Event e) events ApplicationEvent MessagingEvent ProcessMetric LDMEvent TCPEvent WDSSEvent ErrorEvent VariableEvent DebugEvent AlgorithmEvent