...
PlantUML Macro |
---|
@startuml participant CLAMP_Runtime database Database loop forever CLAMP_Runtime -> Database: Read Participant StatisticsParticipants loop Over each Participant alt Participant has not reported in last reporting window CLAMP_Runtime -> CLAMP_Runtime: Log Participant as having missed a report CLAMP_Runtime -> Database: Increment missed report counter on Participant alt Participant has exceeded alarm threshold on missed report counter CLAMP_Runtime -> CLAMP_Runtime: Raise a Participant Offline alarm on participant CLAMP_Runtime -> Database: Mark participant as being offline end else Participant has reported in last reporting window CLAMP_Runtime -> Database: Clear missed report counter on Participant alt Participant marked as being offline CLAMP_Runtime -> CLAMP_Runtime: Clear Participant Offline alarm on participant CLAMP_Runtime -> Database: Mark participant as being online end end end end @enduml |
4.2 Supervise Control Loops
PlantUML Macro |
---|
@startuml participant CLAMP_Runtime database Database loop forever CLAMP_Runtime -> Database: Read Control Loop Instances loop Over each Control Loop Instance loop Over each Control Loop Element alt Control Loop Element has not reported in last reporting window CLAMP_Runtime -> CLAMP_Runtime: Log Control Loop Element as having missed a report CLAMP_Runtime -> Database: Increment missed report counter on Control Loop Element else Control Loop Element has reported in last reporting window CLAMP_Runtime -> Database: Clear missed report counter on Control Loop Element end end alt Control Loop Element in Control Loop Instance has exceeded alarm threshold on missed report counter CLAMP_Runtime -> CLAMP_Runtime: Raise a Control Loop Offline alarm on Control Loop CLAMP_Runtime -> Database: Mark Control Loop as being offline else No Control Loop Element in Control Loop Instance has exceeded alarm threshold on missed report counter alt Control Loop marked as being offline CLAMP_Runtime -> CLAMP_Runtime: Clear Control Loop Offline alarm on Control Loop CLAMP_Runtime -> Database: Mark Control Loop as being online end end end end @enduml |
...