Intake Agent Core
All Intake Agents use a shared base component that provides the core functionality.
Authentication
Intake Agents are integrated with DCH's Keycloak authentication. If a user is already logged in to another DCH frontend application, that login is automatically reused for the Intake Agent, and the same applies in the opposite direction. If no active session exists, the login flow redirects to Keycloak.
The logout option is available from the user context menu, which opens by clicking the user icon at the bottom of the sidebar.
Home
The Home page provides general information about the Intake Agent, including the version of the Intake Agent itself and the version of the Core package it uses. This information is important when reporting issues.
The service name is also shown and can be used to locate related log messages in OpenSearch.
Data Preview
Data Preview makes it possible to inspect data based on the Data Source Configurations stored in an Intake Agent.
After a Data Source Configuration is selected, the available source entities are listed. Selecting an entity displays its corresponding data. To improve performance, the preview remains cached until a different Data Source Configuration is selected.
The individual Intake Agent determines how much data is shown in the preview and how up to date that data is. For example, if an Intake Agent caches ten rows per entity when a Data Source Configuration is stored, those ten rows are shown in the preview. If no caching mechanism is implemented, the preview always requests the latest five rows of data.
Some Intake Agents may not support data preview and may therefore show no results.
Data Jobs
Whenever DCH requests data from an Intake Agent, a Data Job is created. Data Jobs track the progress of data retrieval and provide a way to cancel an active retrieval request. When a Data Job is canceled, DCH is notified and the related intake job is also canceled.
Data Jobs are currently stored only in memory. As a result, all Data Jobs are lost if the Intake Agent is restarted.