opentelemetry-specificatio VS opentelemetry-collector-contrib

Compare opentelemetry-specificatio vs opentelemetry-collector-contrib and see what are their differences.

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
opentelemetry-specificatio opentelemetry-collector-contrib
7 43
- 2,546
- 5.8%
- 10.0
- 2 days ago
Go
- Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

opentelemetry-specificatio

Posts with mentions or reviews of opentelemetry-specificatio. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-11-16.
  • Migrating to OpenTelemetry
    8 projects | news.ycombinator.com | 16 Nov 2023
    Sure, happy to provide more specifics!

    Our main issue was the lack of a synchronous gauge. The officially supported asynchronous API of registering a callback function to report a gauge metric is very different from how we were doing things before, and would have required lots of refactoring of our code. Instead, we wrote a wrapper that exposes a synchronous-like API: https://gist.github.com/yolken-airplane/027867b753840f7d15d6....

    It seems like this is a common feature request across many of the SDKs, and it's in the process of being fixed in some of them (https://github.com/open-telemetry/opentelemetry-specificatio...)? I'm not sure what the plans are for the golang SDK specifically.

    Another, more minor issue, is the lack of support for "constant" attributes that are applied to all metrics. We use these to identify the app, among other use cases, so we added wrappers around the various "Add", "Record", "Observe", etc. calls that automatically add these. (It's totally possible that this is supported and I missed it, in which case please let me know!).

    Overall, the SDK was generally well-written and well-documented, we just needed some extra work to make the interfaces more similar to the ones were were using before.

  • OpenTelemetry in 2023
    36 projects | news.ycombinator.com | 28 Aug 2023
    Two problems with OpenTelemetry:

    1. It doesn't know what the hell it is. Is it a semantic standard? Is a protocol? It is a facade? What layer of abstraction does it provide? Answer: All of the above! All the things! All the layers!

    2. No one from OpenTelemetry has actually tried instrumenting a library. And if they have, they haven't the first suggestion on how instrumenters should actually use metrics, traces, and logs. Do you write to all three? To one? I asked this question two years ago, not a single response. [1]

    [1] https://github.com/open-telemetry/opentelemetry-specificatio...

  • Go standard library: structured, leveled logging
    11 projects | news.ycombinator.com | 11 Sep 2022
    That's why you have otel logging: https://github.com/open-telemetry/opentelemetry-specificatio...
  • Monarch: Google’s Planet-Scale In-Memory Time Series Database
    4 projects | news.ycombinator.com | 14 May 2022
    There are a large amount of subtle tradeoffs around the bucketing scheme (log, vs. log-linear, base) and memory layout (sparse, dense, chunked) the amount of configurability in the histogram space (circllhist, DDSketch, HDRHistogram, ...). A good overview is this discussion here:

    https://github.com/open-telemetry/opentelemetry-specificatio...

    As for the circllhist: There are no knobs to turn. It uses base 10 and two decimal digits of precision. In the last 8 years I have not seen a single use-case in the operational domain where this was not appropriate.

  • OpenTelemetry
    7 projects | news.ycombinator.com | 26 Oct 2021
    A good place to look at is the milestones on GitHub: https://github.com/open-telemetry/opentelemetry-specificatio...

    Logging is still experimental in the spec. Metrics API is feature freeze and the protocol is stable, so it's more on language SDKs to stabilize their implementations. This is a focus for several of them right now.

opentelemetry-collector-contrib

Posts with mentions or reviews of opentelemetry-collector-contrib. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-27.
  • OpenTelemetry at Scale: what buffer we can use at the behind to buffer the data?
    1 project | news.ycombinator.com | 10 Apr 2024
  • All you need is Wide Events, not "Metrics, Logs and Traces"
    7 projects | news.ycombinator.com | 27 Feb 2024
    The open telemetry collector does just that. https://github.com/open-telemetry/opentelemetry-collector-co...
  • OpenTelemetry Collector Anti-Patterns
    2 projects | dev.to | 26 Feb 2024
    There are two official distributions of the OpenTelemetry Collector: Core, and Contrib.
  • OpenTelemetry Journey #00 - Introduction to OpenTelemetry
    4 projects | dev.to | 25 Feb 2024
    Maybe, you are asking yourself: "But I already had instrumented my applications with vendor-specific libraries and I'm using their agents and monitoring tools, why should I change to OpenTelemetry?". The answer is: maybe you're right and I don't want to encourage you to update the way how you are doing observability in your applications, that's a hard and complex task. But, if you are starting from scratch or you are not happy with your current observability infrastructure, OpenTelemetry is the best choice, independently of the backend telemetry tool that you are using. I would like to invite you to take a look at the number of exporters available in the collector contrib section, if your backend tracing tool is not there, probably it's already using the Open Telemetry Protocol (OTLP) and you will be able to use the core collector. Otherwise, you should consider changing your backend telemetry tool or contributing to the project creating a new exporter.
  • Building an Observability Stack with Docker
    5 projects | dev.to | 15 Feb 2024
    To receive OTLP data, you set up the standard otlp receiver to receive data in HTTP or gRPC format. To forward traces and metrics, a batch processor was defined to accumulate data and send it every 100 milliseconds. Then set up a connection to Tempo (in otlp/tempo exporter, with a standard top exporter) and to Prometheus (in prometheus exporter, with a control exporter). A debug exporter also was added to log info on container standard I/O and see how the collector is working.
  • Spotlight: Sentry for Development
    3 projects | news.ycombinator.com | 6 Dec 2023
    Thanks for the reply. Would the Spotlight sidecar possibly be able to run independently and consume spans emitted by the Sentry exporter[0] or some other similar flow beyond strictly exporting directly from the Sentry SDK provided by Spotlight?

    This tooling looks really cool and I'd love to play around with it, but am already pretty entrenched into OTel and funneling data through the collector and don't want to introduce too much additional overhead for devs.

    [0] https://github.com/open-telemetry/opentelemetry-collector-co...

  • Amazon EKS Monitoring with OpenTelemetry [Step By Step Guide]
    5 projects | dev.to | 5 Dec 2023
    A list of all metric definitions can be found here.
  • Spring Boot Monitoring with Open-Source Tools
    5 projects | dev.to | 2 Dec 2023
    receivers: otlp: protocols: grpc: endpoint: 0.0.0.0:4317 http: endpoint: 0.0.0.0:4318 hostmetrics: collection_interval: 60s scrapers: cpu: {} disk: {} load: {} filesystem: {} memory: {} network: {} paging: {} process: mute_process_name_error: true mute_process_exe_error: true mute_process_io_error: true processes: {} prometheus: config: global: scrape_interval: 60s scrape_configs: - job_name: otel-collector-binary scrape_interval: 60s static_configs: - targets: ["localhost:8889>"] - job_name: "jvm-metrics" scrape_interval: 10s metrics_path: "/actuator/prometheus" static_configs: - targets: ["localhost:8090>"] processors: batch: send_batch_size: 1000 timeout: 10s # Ref: https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/processor/resourcedetectionprocessor/README.md resourcedetection: detectors: [env, system] # Before system detector, include ec2 for AWS, gcp for GCP and azure for Azure. # Using OTEL_RESOURCE_ATTRIBUTES envvar, env detector adds custom labels. timeout: 2s system: hostname_sources: [os] # alternatively, use [dns,os] for setting FQDN as host.name and os as fallback extensions: health_check: {} zpages: {} exporters: otlp: endpoint: "ingest.{region}.signoz.cloud:443" tls: insecure: false headers: "signoz-access-token": logging: verbosity: normal service: telemetry: metrics: address: 0.0.0.0:8888 extensions: [health_check, zpages] pipelines: metrics: receivers: [otlp] processors: [batch] exporters: [otlp] metrics/internal: receivers: [prometheus, hostmetrics] processors: [resourcedetection, batch] exporters: [otlp] traces: receivers: [otlp] processors: [batch] exporters: [otlp] logs: receivers: [otlp] processors: [batch] exporters: [otlp]
  • Migrating to OpenTelemetry
    8 projects | news.ycombinator.com | 16 Nov 2023
    If you are using the prometheus exporter, you can use the transform processor to get specific resource attributes into metric labels.

    With the advantage that you get only the specific attributes you want, thus avoiding a cardinality explosion.

    https://github.com/open-telemetry/opentelemetry-collector-co...

  • Exploring the OpenTelemetry Collector
    6 projects | dev.to | 16 Nov 2023
    OpenTelemetry Operators

What are some alternatives?

When comparing opentelemetry-specificatio and opentelemetry-collector-contrib you can also consider the following projects:

skywalking - APM, Application Performance Monitoring System

uptrace - Open source APM: OpenTelemetry traces, metrics, and logs

SLF4J - Simple Logging Facade for Java

cockpit-podman - Cockpit UI for podman containers

opentelemetry-specification - Specifications for OpenTelemetry

signoz - SigNoz is an open-source observability platform native to OpenTelemetry with logs, traces and metrics in a single application. An open-source alternative to DataDog, NewRelic, etc. 🔥 🖥. 👉 Open source Application Performance Monitoring (APM) & Observability tool

semantic-conventions - Defines standards for generating consistent, accessible telemetry across a variety of domains

podman-compose - a script to run docker-compose.yml using podman

zipkin-api - Zipkin's language independent model and HTTP Api Definitions

traefik - The Cloud Native Application Proxy

jvm-serializers - Benchmark comparing serialization libraries on the JVM

serilog-sinks-seq - A Serilog sink that writes events to the Seq structured log server