Collector

DACS Receiver

DACS Receiver
Status
StabilityDevelopment
TelemetryMetrics

dacsreceiver is a custom OpenTelemetry Collector receiver that scrapes DACS source data from PostgreSQL and SOAP endpoints, normalizes it into metric records, and emits metrics into Collector pipelines.

Supported pipeline types: Metrics

Getting Started

The following settings are required when the corresponding source is enabled:

  • postgres.endpoint: PostgreSQL DSN used by the receiver when postgres.enabled is true
  • soap.endpoint: SOAP endpoint used by the receiver when soap.enabled is true

The following settings are optional:

  • postgres.username: PostgreSQL username override when credentials are not embedded in the DSN
  • postgres.password: PostgreSQL password override when credentials are not embedded in the DSN
  • postgres.collection_interval: polling interval for PostgreSQL scrapes
  • postgres.timeout: timeout for each PostgreSQL scrape
  • soap.token: bearer token or shared secret for SOAP requests
  • soap.collection_interval: polling interval for SOAP scrapes
  • soap.timeout: timeout for each SOAP scrape
  • cardinality.allowed_attributes: allowlist for metric attributes preserved by the mapper
  • cardinality.max_label_length: maximum label length before truncation

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

Example config:

receivers:
  dacsreceiver:
    postgres:
      enabled: true
      endpoint: "postgresql://host:5432/dbname"
      username: "${env:DACS_DB_USER}"
      password: "${env:DACS_DB_PASSWORD}"
      collection_interval: 30s
      timeout: 10s
    soap:
      enabled: false
      endpoint: "https://host/path"
      token: "${env:DACS_SOAP_TOKEN}"
      collection_interval: 60s
      timeout: 15s
    cardinality:
      allowed_attributes:
        - deployment.environment.name
        - dacs.source
        - dacs.component
      max_label_length: 120

Confirm