Aller au contenu

Engine-fifo

Services interactions

A simple schema which only displays direct interactions with all databases, RMQ, external APIs, etc.

flowchart EF[engine-fifo] MDB[(MongoDB)] RMQ[(RabbitMQ)] TDB[(TimescaleDB)] R[(Redis)] DS[Data source Service now/etc.] EF ---|fetch event filter rules and fetch external data| MDB EF ---|store locks and event queues| R EF ---|receive/send events| RMQ EF ---|store metrics| TDB EF ---|fetch external data| DS

Detailed schemas

The following schemas display flows of events by each use-case of business logic.

Event control flow

No event is processing at the moment for the same entity.

flowchart C[Canopsis connector] A[API] OE[Other engines] EF[engine-fifo] ECH[engine-che] EAC[engine-action] EN[next engines] R[(Redis)] C -- 1. Event --> EF A -- 1. Event --> EF OE -- 1. Event --> EF EF -.->|2. Check lock| R EF -- 3. Event --> ECH ECH -- 4. Event --> EN EN -- 5. Event --> EAC EAC -- 6. Ack event --> EF EF -.->|7. Fetch next event| R EF -- 8. Next event--> ECH

An event is processing at the moment for the same entity.

flowchart C[Canopsis connector] A[API] OE[Other engines] EF[engine-fifo] R[(Redis)] C -- 1. Event --> EF A -- 1. Event --> EF OE -- 1. Event --> EF EF -.->|2. Check lock| R EF -.->|3. Save event in queue| R

Event enrichment flow

flowchart C[Canopsis connector] EF[engine-fifo] ECH[engine-che] DS[Data source Service now/etc.] C -- 1 . Event --> EF EF -.->|2 . Fetch external data| DS EF -- 3 . Enriched event --> ECH