# MosaicOA PE Receiver

<table><caption class="sr-only">MosaicOA PE Receiver</caption><thead><tr><th scope="col">Status</th><th scope="col"></th></tr></thead><tbody><tr><td>Stability</td><td>Development</td></tr><tr><td>Telemetry</td><td>Metrics</td></tr></tbody></table>

`mosaicoapereceiver` is a custom OpenTelemetry Collector receiver that polls the MosaicOA PE `/status` endpoint, converts topic and summary values into metrics, and preserves bounded non-numeric status fields as resource attributes.

Supported pipeline types: Metrics

## Getting Started

The following settings are required:

-   `host`: MosaicOA PE host or IP address

The following settings are optional:

-   `scheme`: `http` or `https` for the status endpoint
-   `port`: endpoint port
-   `path`: status endpoint path
-   `timeout`: scrape timeout
-   `collection_interval`: polling interval
-   `tls.*`: CA/client certificate and TLS verification settings for HTTPS
-   `cardinality.allowed_attributes`: allowlist for metric/resource attributes preserved by the receiver
-   `cardinality.max_label_length`: maximum attribute value length before truncation

Runtime startup also requires the `pho_license` Collector extension to be enabled and to grant at least one `mosaicoapereceiver` seat.

Example config:

```
receivers:
  mosaicoapereceiver:
    scheme: https
    host: 10.0.0.15
    port: 8443
    path: /status
    timeout: 10s
    collection_interval: 30s
    tls:
      insecure: false
      insecure_skip_verify: false
      ca_file: /etc/otelcol/mosaicoa-ca.pem
```

## Telemetry Mapping

Topic rows emit:

-   `mosaicoa.pe.topic.records` with attribute `mosaicoa.topic`
-   `mosaicoa.pe.topic.polls` with attribute `mosaicoa.topic`

Summary rows emit numeric gauges such as:

-   `mosaicoa.pe.xpaths.total`
-   `mosaicoa.pe.summary_xpaths.total`
-   `mosaicoa.pe.updates.total`
-   `mosaicoa.pe.dataviews.total`
-   `mosaicoa.pe.mods`
-   `mosaicoa.pe.cimp.points_written`
-   `mosaicoa.pe.gc.avg_time`
-   `mosaicoa.pe.heap.memory.usage`
-   `mosaicoa.pe.non_heap.memory.usage`

The receiver preserves the following non-numeric values as resource attributes:

-   `mosaicoa.pe.version`
-   `mosaicoa.pe.generation_time`
-   `mosaicoa.pe.last_reset_time`
-   `mosaicoa.pe.cimp.process_time`
