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

New component: Sematext Exporter #36465

Open
3 tasks done
AkhigbeEromo opened this issue Nov 20, 2024 · 3 comments
Open
3 tasks done

New component: Sematext Exporter #36465

AkhigbeEromo opened this issue Nov 20, 2024 · 3 comments
Assignees
Labels
Accepted Component New component has been sponsored

Comments

@AkhigbeEromo
Copy link

AkhigbeEromo commented Nov 20, 2024

The purpose and use-cases of the new component

The Sematext Metric Exporter component is designed to export telemetry data, specifically metrics and logs, to the Sematext platform, enabling real-time monitoring, alerting, and observability. This exporter supports sending metrics to Sematext Cloud in Influx line protocol format and logs using the Bulk Index Api format.

The primary changes include:

  • Addition of an app_token for authentication with the Sematext platform.
  • Introduction of Region to specify the data storage location.

Example configuration for the component

Configuration Options

  • timeout (default = 5s) Timeout for requests

  • Region Specifies the Sematext region the user is operating in; must be one of:

    • US
    • EU
  • app_token Specifies the token of the Sematext Monitoring App to which the user wants to send data.

  • payload_max_lines (default = 1,000) Maximum number of lines allowed per HTTP POST request.

  • payload_max_bytes (default = 300,000) Maximum number of bytes allowed per HTTP POST request.

  • metrics_schema (default = telegraf-prometheus-v2) The chosen metrics schema to write.

  • sending_queue Details here

    • enabled (default = true) Enables the sending queue.
    • num_consumers (default = 10) The number of consumers from the queue.
    • queue_size (default = 1000) Maximum number of batches allowed in the queue at a given time.
  • retry_on_failure Details here

    • enabled (default = true) Enables retries on failure.
    • initial_interval (default = 5s) Time to wait after the first failure before retrying.
    • max_interval (default = 30s) Upper bound on backoff interval.
    • max_elapsed_time (default = 120s) Maximum amount of time (including retries) spent trying to send a request/batch.

The full list of settings exposed for this exporter are documented in config.go.

Example:

timeout: 500ms
region: US  
retry_on_failure:
  enabled: true
  initial_interval: 1s
  max_interval: 3s
  max_elapsed_time: 10s
metrics:
  app_token: 2064e37c-4fac-45f6-831d-922d43fde759
  sending_queue:
    enabled: true
    num_consumers: 3
    queue_size: 10
  payload_max_lines: 100
  payload_max_bytes: 1000
logs:
  app_token: 9064e37c-4gac-49f6-831d-922l43fse759

Telemetry data types supported

Metrics, Logs

Is this a vendor-specific component?

  • This is a vendor-specific component
  • If this is a vendor-specific component, I am a member of the OpenTelemetry organization.
  • If this is a vendor-specific component, I am proposing to contribute and support it as a representative of the vendor.

Code Owner(s)

@AkhigbeEromo

Sponsor (optional)

@andrzej-stencel

Additional context

No response

@AkhigbeEromo AkhigbeEromo added needs triage New item requiring triage Sponsor Needed New component seeking sponsor labels Nov 20, 2024
@AkhigbeEromo
Copy link
Author

@andrzej-stencel does this look good now and can this issue be assigned to me

@atoulme
Copy link
Contributor

atoulme commented Dec 6, 2024

@andrzej-stencel please review?

@andrzej-stencel
Copy link
Member

This component was originally proposed before the rules for vendor components were changed. I think it's fair to still accept it, therefore I declare to sponsor this component.

@andrzej-stencel andrzej-stencel added Accepted Component New component has been sponsored and removed Sponsor Needed New component seeking sponsor labels Dec 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Accepted Component New component has been sponsored
Projects
None yet
Development

No branches or pull requests

4 participants