auditmessage.plantuml 1.2 KB

123456789101112131415161718192021222324252627282930313233343536
  1. @startuml MessageAuditor
  2. header Message MessageAuditor
  3. left to right direction
  4. package 1 {
  5. [Publisher]
  6. database "interface log location 1" as database1
  7. }
  8. package 2 {
  9. database "interface log location 2" as database2
  10. [Consumer]
  11. }
  12. [MessageAuditor]
  13. database1 <|-- Publisher #line:red;line.bold;text:Red : Publish into \ndesignated \nlog location
  14. database2 <|-- Consumer #line:red;line.bold;text:Red : Publish into \ndesignated \nlog location
  15. Publisher --|> Consumer #green;line.dashed;text:green : Publish \nSubscribed \nData
  16. Publisher <-- Consumer : Subscribe \nfor \ndata
  17. Error -> MessageAuditor
  18. database1 <--- MessageAuditor : Check and compare \nrelevant log location
  19. MessageAuditor --> database2 : Check and compare \nrelevant log location
  20. MessageAuditor --|> Publisher #blue;line.dotted;text:blue : Publish missing data
  21. @enduml
  22. ' Make changes to the line publish missing data
  23. /' Brief Summary :
  24. When Error is emitted from relevant party, then the message auditor that
  25. is subcribed to it will receive the message and perform the checking.
  26. It will cross check against the two database to see what's missing, and
  27. then will publish to the publisher for the missing data. The publisher
  28. will then include it in it's own stream.
  29. '/