Designing Modeled Event Meshes

You can use Runtime Event Manager to create and maintain models of event flows and full event meshes. A modeled event mesh represents an actual event mesh or event flow operating in a specific runtime environment. Modeled event meshes help you define and visualize event flows between publishing and subscribing applications within an event-driven architecture (EDA).

You can build modeled event meshes using objects created in Designer. You can then discover data from runtime event brokers in an actual event mesh and compare the data with the model to verify that the runtime matches the model and you can update your runtime or model as required.

Alternatively, if you already have a functioning EDA, you can use discovered runtime data to populate Event Portal with objects that match your runtime event flows and create modeled event mesh for your existing runtime environment without manually creating all of the applications and events in Designer.

You create modeled event meshes within environments. Environments in PubSub+ Cloud represent the runtime environments within your organization. For example, you may have several development environments for different lines of business, testing environments, a staging environment, and a production environment. You can create modeled event meshes with the same name in different environments to represent the deployment of applications as they are operationally promoted to runtime event brokers in higher level environments.

This section includes the following tasks:

For information about managing event brokers, applications, and events within a modeled event mesh see Building a Modeled Event Mesh.

Creating a Modeled Event Mesh

When you create a modeled event mesh you specify whether it represents a Solace event mesh or a Kafka event flow and you select the Environments it resides in. After you create a modeled event mesh you must add a model event broker that represents an event broker in the runtime. You can then associate application versions and event versions with the event broker to build a model of an event mesh or connect the model event broker to a runtime event broker to import runtime data. For more information, see Adding an Event Broker to a Modeled Event Mesh.

To create a modeled event mesh, perform these steps:

  1. Log in to the PubSub+ Cloud Console if you have not done so yet. The URL to access the Cloud Console differs based on your authentication scheme. For more information, see Logging into the PubSub+ Cloud Console.
  2. In the Cloud Console, select Runtime Event Manager on the navigation bar.
  3. In Runtime Event Manager, select the Modeled Event Meshes tab.
  4. Click Create Modeled Event Mesh.

    Screenshot showing the options described in the surrounding text

  5. Enter a Modeled Event Mesh Name.
  6. Select either Solace or Kafka as the modeled event mesh Type.
  7. Enter a Description for the modeled event mesh. The Description field supports Markdown. Click toggle preview to preview the rendered text.
  8. Select the Environment where you want to create the modeled event mesh.
  9. Click Create.

Viewing a Modeled Event Mesh

When you open a modeled event mesh, the Architecture tab displays the objects that the modeled event mesh contains, both in a list and in a graph that shows the relationships between the objects in the modeled event mesh.

To view a modeled event mesh, perform these steps:

  1. In Runtime Event Manager, select the Modeled Event Meshes tab.
  2. Click the name of the modeled event mesh.
  3. Select the Architecture tab.

The Architecture tab includes a List panel and a Graph panel. Both panels display the objects in the modeled event mesh. When you select an object in either the list or the graph, it is highlighted in both panels.

The list view includes tabs for applications, events, and imported Kafka schemas. You can filter the list by name to find a specific object.

Using the Graph Panel

You can use the tools at the top of the Graph panel to adjust the view.

Tool Description

Centers the graph on the page and, if necessary, zooms down to display all objects or zooms up to full size.

Settings menu with these options:

Show Warnings
When this option is enabled, warning icons and tooltips for applications with unconsumed events, events with no topic address, and unpublished events, display in the Graph panel.
Reset Layout
Reorganizes the Graph view into a layout where objects are distributed as clearly as the number of objects and screen size allows. If you publish the layout change, the layout of the modeled event mesh is updated for all users.
Refreshes the graph with any updates to objects and layout changes made by other users, without recalculating the layout.
Opens the legend to display information that helps you use the graph

Zooms in and out.

The Graph panel uses the following icons to represent objects in your modeled event mesh:

Icon Description

Application

 

Application in draft state

Applications in draft state are still in development and subject to change.

If Show Warnings is enabled, a warning indicator displays over the icon if the application subscribes to one or more events but does not have a consumer set up to attract the event. For more information, see Applications.

Event

 

Event in draft state

Events in draft state are still in development and subject to change.

If Show Warnings is enabled, a warning indicator displays over the icon if the event does not have a topic address or if there is no application in the modeled event mesh that publishes it.

Unpublished event

If Show Warnings is enabled, a warning indicator displays over the icon.

Schema

Schemas display only in the Relationship view.

 

Event path

The arrow indicates the direction of the event. If the arrow points away from an application, the application publishes the event. If the arrow points toward an application, the application subscribes to or consumes the event.

If an issue needs to be fixed with an event or with an application that publishes it or subscribes to it, the event path appears as a dashed line.

You can also drag objects around the Graph view. If you drag an object to a new location on the screen, the view changes for all users who have access to the application domain.

Viewing Object Relationships

If you have a modeled event mesh that contains a large number of objects, you may find it useful to view only a specified object and the other objects that it is closely related to, so that you can better visualize the relationships between a smaller number of objects.

When you show relationships for an object, the Graph panel displays only the related objects. The List panel continues to show all objects in the modeled event mesh. Objects that display in the Relationship view have a gray background in the List panel.

To view the relationships for an object, perform these steps:

  1. On the Architecture tab for the modeled event mesh, right-click an object in the Graph panel and select Show Relationships.

    Alternatively, in the List panel, click More Actions for the object and select Show Relationships.

  2. Click Settings to specify how the relationships for the specified object display using the following options:

    Option Description

    Show Warnings

    When this option is enabled, warning icons and tooltips for applications with unconsumed events, events with no topic address, and unpublished events, display in the Graph panel.

    Show Schemas

    When this option is enabled, schemas associated with events in the Relationship view also display if they are within the selected number of relationship levels. Schemas display for both Solace and Kafka modeled event meshes. Schemas shown in the Relationship view appear in the List panel only if they were imported into Event Portal.

    Layout Style

    The Relationship view can display objects in a Tree layout with the specified object at the top or a Radial layout with the specified object in the center.

    Relationship Level

    You can display one level of relationships to show only the objects directly associated with the specified object or two levels to also show objects directly associated with the first level of related objects.

    If you display two levels of related objects using the Radial layout, some objects may display more than once. For example, if you show the relationships for an event that is associated with two applications, any other events associated with both applications display twice to show the relationships for both applications.

    If you select an object that displays more than once, all other display instances are highlighted.

    Reset Layout

    If you drag objects to new positions while in the Relationship view, this option resets the objects back to their initial positions.

    Unlike the full Graph view, if you drag objects around the Graph panel in the Relationship view, the object positions are reset whenever you go back to the Graph view, view relationships for a different object, or change the layout style or number of levels displayed.

  3. To return to the full graph, click Back to Graph View.

Viewing Object Details

You can view the design details of the application, event, and schema versions that display on the Architecture tab.

You can also open the object in Designer from the Details dialog.

To view application, event, or schema version details, perform these steps:

  1. On the Architecture tab for the modeled event mesh, right-click on an object in the Graph panel and select View Details.

    Alternatively, in the List panel, click the name of the object.

    Screenshot showing the options described in the surrounding text.

  2. To open the object in Designer, in the Details dialog, click Open in Designer.

Deleting a Modeled Event Mesh

You can delete modeled event meshes that you no longer need. When you delete a modeled event mesh, the application versions and event versions it includes are not deleted from Event Portal or from other modeled event meshes. Model event brokers that are part of a modeled event mesh and remain in Event Portal become available to add to another modeled event mesh.

To delete a modeled event mesh, perform these steps:

  1. On the Runtime Event Manager home page, select the Modeled Event Meshes tab.
  2. On the Modeled Event Meshes tab, in the list of modeled event meshes, click More Actions for the modeled event mesh that you want to delete and then select Delete.
  3. Click Delete.