Consumer Capability Matrix
Which of the 13 consumers support which capabilities, read from the connector source.
Not every consumer can do everything. A connector declares the capabilities it implements, and Infohub only offers you the features its declared capabilities support — which is why an option that exists for one consumer is simply absent for another.
This table is read from the connector source at v7.2.0, so it says what the shipped code declares rather than what the sales sheet claims.
What the capabilities mean#
| Capability | What it gives you |
|---|---|
| Event period comments | Publishes comments on event-sliced values. |
| Event period exceptions | Publishes exceptions on event-sliced values. |
| Event period values | Publishes measure values sliced by event period. |
| Value exceptions | Publishes exceptions raised against measure values. |
| Measure values | Publishes interval measure values. |
| Value comments | Publishes comments attached to measure values. |
| Event schemes | Publishes the event scheme definition and its periods. |
| Test button | The connection dialog can test the connection before you save it. |
| Configuration migration | Existing connection configuration is upgraded automatically when the connector version changes. |
| Event attributes | Publishes event attribute values. |
| Catalogues | Lists the databases or catalogues on the server so you can choose one when configuring the connection. |
| Namespace browsing | The source exposes its tag tree, so you pick tags in Flow Config rather than typing paths. |
| Event period comments | Publishes comments recorded against an event period. |
| Raw values | Publishes the raw value stream rather than interval summaries. |
| Working directory | Keeps state on disk between runs, such as a file sequence number or a resume token. |
| Lazy namespace browsing | Loads the tree branch by branch as you expand it, and supports find-next searching — how a namespace with hundreds of thousands of tags stays usable. |
| Measure limits | Publishes limit definitions and their values. |
| Infohub context | Receives Infohub's own connection details, so the consumer can read back from the Infohub database. |
| Persistent connection | Holds the connection open between retrievals instead of reconnecting each time. |
Which consumers support what#
Event period comments — 12 of 13
AWS Kinesis Data Streams · Azure Event Hub · CSV · Canary · Endpoint Consumer · Flow Consumer · MQTT Broker · Microsoft SQL Database · MySQL Database · PostgreSQL Database · Snowflake · SparkplugB Broker
Event period exceptions — 12 of 13
AWS Kinesis Data Streams · Azure Event Hub · CSV · Canary · Endpoint Consumer · Flow Consumer · MQTT Broker · Microsoft SQL Database · MySQL Database · PostgreSQL Database · Snowflake · SparkplugB Broker
Event period values — 12 of 13
AWS Kinesis Data Streams · Azure Event Hub · CSV · Canary · Endpoint Consumer · Flow Consumer · MQTT Broker · Microsoft SQL Database · MySQL Database · PostgreSQL Database · Snowflake · SparkplugB Broker
Value exceptions — 12 of 13
AWS Kinesis Data Streams · Azure Event Hub · CSV · Canary · Endpoint Consumer · Flow Consumer · MQTT Broker · Microsoft SQL Database · MySQL Database · PostgreSQL Database · Snowflake · SparkplugB Broker
Measure values — 12 of 13
AWS Kinesis Data Streams · Azure Event Hub · CSV · Canary · Endpoint Consumer · Flow Consumer · MQTT Broker · Microsoft SQL Database · MySQL Database · PostgreSQL Database · Snowflake · SparkplugB Broker
Value comments — 11 of 13
AWS Kinesis Data Streams · Azure Event Hub · CSV · Canary · Flow Consumer · MQTT Broker · Microsoft SQL Database · MySQL Database · PostgreSQL Database · Snowflake · SparkplugB Broker
Event schemes — 10 of 13
AWS Kinesis Data Streams · Apache Kafka · Azure Event Hub · CSV · Canary · MQTT Broker · Microsoft SQL Database · MySQL Database · PostgreSQL Database · Snowflake
Test button — 10 of 13
Apache Kafka · Canary · Endpoint Consumer · Flow Consumer · MQTT Broker · Microsoft SQL Database · MySQL Database · PostgreSQL Database · Snowflake · SparkplugB Broker
Configuration migration — 5 of 13
MQTT Broker · Microsoft SQL Database · MySQL Database · PostgreSQL Database · Snowflake
Event attributes — 5 of 13
MQTT Broker · Microsoft SQL Database · MySQL Database · PostgreSQL Database · Snowflake
Catalogues — 4 of 13
Microsoft SQL Database · MySQL Database · PostgreSQL Database · Snowflake
Namespace browsing — 4 of 13
Microsoft SQL Database · MySQL Database · PostgreSQL Database · Snowflake
Event period comments — 4 of 13
Microsoft SQL Database · MySQL Database · PostgreSQL Database · Snowflake
Raw values — 2 of 13
Apache Kafka · SparkplugB Broker
Working directory — 1 of 13
SparkplugB Broker
Lazy namespace browsing — 1 of 13
Flow Consumer
Measure limits — 1 of 13
Flow Consumer
Infohub context — 1 of 13
SparkplugB Broker
Persistent connection — 1 of 13
SparkplugB Broker
Only a raw-values consumer can be attached to a tag. A Tag interval measure holds raw timestamped values, so publishing one requires the Raw values capability. Just 2 of the 13 consumers have it:
Apache Kafka · SparkplugB Broker
Attaching any other consumer to a tag produces a binding that cannot deploy — the Consumer Host rejects it with "does not implement the ICanPushRawValues interface". Infohub now refuses the attachment up front, in the Integration panel and from --attach-measure-consumer alike. Earlier builds accepted it and failed later, so a model carried over from one may contain bindings that have never worked.
To publish data from a tag through one of the other eleven, aggregate it to an interval measure first and publish that.
Reading this table#
- A capability a connector does not declare is not a defect. Most sources genuinely cannot answer the question — a flat file has no namespace to browse, and a broker has no history to replay.
- Declaring a capability means the connector implements the interface. It does not promise the server on the other end is configured to allow it; permissions and licensing still apply.
- If a feature you expect is missing in Flow Config, check this table before raising it: the field is usually hidden because the connector never declared the capability behind it.