Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

32669 wireframe sum connector #33759

Merged
merged 24 commits into from
Jul 3, 2024

Conversation

greatestusername
Copy link
Contributor

@greatestusername greatestusername commented Jun 25, 2024

Description: Initial wireframe PR for a new sum connector (as described in #32669)
Provides bare minimum to start developing a new connector (config, factory, integration test stubs for connector lifecycle, etc)

Sum Connector takes in logs, metrics, or traces and matches an attribute then allows summing numerical values present in that attribute and sending those sums as a time series metric along with any attributes defined within the connector config.

E.G. Log contains a field for total_price of a payment. Matching on total_price as the source_attribute will take numerical values from this attributte and emit a time series metric (checkout.total) of the sums along with any other attributes defined in the connector config.

Example config:

receivers:
  foo:
connectors:
  sum:
    logs:
      checkout.total:
        source_attribute: 
          - attributes["total_price"]
        conditions:
          - attributes["total_price"] != "NULL"
        attributes:
          - key: payment.processor
            default_value: unspecified_processor
          - key: env
            default_value: no_env
exporters:
  bar:

service:
  pipelines:
    metrics/sum:
       receivers: [sum]
       exporters: [bar]
    logs:
       receivers: [foo]
       exporters: [sum]

Link to tracking Issue: 32669

Testing: Generated component and package tests

Documentation: README and issue #32669 provide current documentation of projected future state.

@greatestusername greatestusername marked this pull request as ready for review June 25, 2024 13:51
@greatestusername greatestusername requested review from a team and mx-psi June 25, 2024 13:51
@mx-psi mx-psi requested a review from crobert-1 June 25, 2024 14:02
connector/sumconnector/metadata.yaml Outdated Show resolved Hide resolved
connector/sumconnector/metadata.yaml Outdated Show resolved Hide resolved
connector/sumconnector/go.mod Outdated Show resolved Hide resolved
connector/sumconnector/README.md Show resolved Hide resolved
connector/sumconnector/connector.go Outdated Show resolved Hide resolved
connector/sumconnector/connector.go Outdated Show resolved Hide resolved
connector/sumconnector/go.mod Outdated Show resolved Hide resolved
Copy link
Member

@crobert-1 crobert-1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for adding the configuration details, super helpful 👍 Just some questions and clarifications.

connector/sumconnector/README.md Outdated Show resolved Hide resolved
connector/sumconnector/README.md Outdated Show resolved Hide resolved
connector/sumconnector/README.md Outdated Show resolved Hide resolved
connector/sumconnector/README.md Outdated Show resolved Hide resolved
connector/sumconnector/README.md Outdated Show resolved Hide resolved
connector/sumconnector/config.go Show resolved Hide resolved
versions.yaml Outdated Show resolved Hide resolved
@crobert-1 crobert-1 added the ready to merge Code review completed; ready to merge by maintainers label Jul 2, 2024
@mx-psi mx-psi merged commit 94d47eb into open-telemetry:main Jul 3, 2024
161 checks passed
@github-actions github-actions bot added this to the next release milestone Jul 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ready to merge Code review completed; ready to merge by maintainers reports/distributions/contrib.yaml
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants