---
title: Sparkplug B Settings
slug: sparkplug-b-settings
createdAt: 2025-09-10T15:04:48.969Z
---

The MQTT Sparkplug B collector connects to a MQTT broker that supports Sparkplug B. It subscribes on the configured topic, which you can set to `spBv1.0/#` if you want to receive all messages. The topic is of the following format for Sparkplug B `namespace/group_id/message_type/edge_node_id/[device_id]`. The best way to configure the topic is to pass a comma separated list of topics containing only the groups, edge nodes or devices you’re interested in.

For every message that the collector receives it will check if there is a corresponding measurement configured and create points. To configure a measurement you need to specify the `group id`, `edge node id`, `device id`(optional) and the `metric name`.

## Measurement discovery and auto-onboarding

The SparkplugB collector can be configured to discover new measurements and optionally to try to automatically onboard them.
Incoming messages that are not yet linked to a measurement are given a default name: `group_id/edge_node_id/device_id/metric_name` and the measurement is added in status `Discovered` if `AutoOnboard` is not enabled. If `AutoOnboard` is enabled and the collector has a default database configured, Factry Historian will attempt to set the newly discovered measurement to status `Active`.
Discovered measurements can be promoted to `Active` by setting a database and optionally changing their name.

## Collector settings

Some collector settings are specific to the MQTT Sparkplug B collector.

### DiscoverMeasurements

**Description**: Automatically discover measurements by parsing incoming messages. If enabled, the collector will try to parse incoming messages and create measurements based on the message contents. Currently only supported for SparkplugB messages.

### AutoOnboard

**Description**: Automatically try to onboard discovered measurements using the collector’s Default Database.
**Prerequisites**: The default database has to be configured for the collector, and `DiscoverMeasurements` has to be enabled.

### NameRegexMatcher

**Description**: Change the automatically generated name for discovered measurements by setting this field and `NameRegexReplaceBy`. The regex in this field will be matched with the default name generated by the collector. The capture groups in the regex here can be used to selectively replace (parts of) the generated name.

### NameRegexReplaceBy

**Description**: The replacement string to replace the automatically generated name by. Use `$1`, `$2`, …, `$n` to reference capture groups/submatches in the `NameRegexMatcher`

## Measurement settings

The measurement settings reflect the configuration possibilities for mapping a measurement to a Sparkplug B metric.

### CollectionType

**Description**: The way this measurement should be collected from the OPC-UA server.
**Required**: No
**Default**: raw
**Options**: raw | downsampled | monitored

:::hint{type="info"}
Checkout the [data collection methods](docId:89vbWhADQ2gvKMd1bkunK) section for more information.
:::

### DownsamplingInterval

**Description**: The minimum interval between points for CollectionType downsampled. Only relevant for this CollectionType.
**Required**: No
**Default**: 0

### GroupID

**Description**: The group ID, it provides for a logical grouping of MQTT EoN nodes.
**Required**: yes

### EdgeNodeID

**Description**: The edge node ID, it uniquely identifies the MQTT EoN node within the infrastructure.
**Required**: yes

### DeviceID

**Description**: The device ID, it identifies a device attached (physically or logically) to the MQTT EoN node.
**Required**: no

### MetricName

**Description**: The name of the metric.
**Required**: yes

### TagNames

**Description**: Comma separated list of tags to extract.
**Required**: no
