highlight
opentelemetry-js
highlight | opentelemetry-js | |
---|---|---|
33 | 16 | |
6,944 | 2,472 | |
3.0% | 2.2% | |
9.9 | 9.4 | |
about 23 hours ago | 4 days ago | |
TypeScript | TypeScript | |
GNU General Public License v3.0 or later | Apache License 2.0 |
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.
highlight
- Show HN: An open source performance monitoring tool
-
Show HN: Using LLMs and Embeddings to classify application errors
[2] https://app.highlight.io/error-tags
-
Show HN: HyperDX – open-source dev-friendly Datadog alternative
[2] https://github.com/highlight/highlight/tree/main
-
Launch HN: Highlight.io (YC W23) – Open-source, full stack web app monitoring
We have an SDK request here: https://github.com/highlight/highlight/issues/4225
We don't have a particular leaning towards javascript, but haven't gotten to PHP yet. We're definitely open to contributors, but otherwise, we can hopefully get to this in the coming months.
-
Highlight.io (YC W23) – open-source, full stack web app monitoring
Hi Hacker News! We’re Jay and Vadim from Highlight.io (https://highlight.io). We’re building a truly open source [1] observability platform for modern web applications. We posted some of our tools to HN in recent months [2][3]. Today, we’re excited to formally launch the project, share more about where we’re going, and of course, poll the community for some feedback.
A bit of background: Vadim and I have worked at quite a few startups at this point, and a recurring challenge we’ve faced was tracing usability issues on the frontend to downstream errors and logs on the server. Understanding the real reason behind customer issues was always a chaotic juggling of multiple tools. With the rise of "frontend-forward" frameworks such as NextJS, which blur the boundary between the client and server, the complexity of tracing these issues is only growing.
This is where Highlight.io comes in: our product bridges the gap between client and server to give you a holistic view of your entire application.
At its core, Highlight.io has three main “products”: Session Replay, Error Monitoring, and Logging. The novelty here is not in each product but in how they are connected. For example, in Highlight.io it’s very easy to click from a given error to the associated user session where it is thrown [4], and from a given error, you can easily inspect all of the logs that fired leading up to it. Ensuring that all of our products work together seamlessly with little to no effort is a core principle of our product strategy. If you’re using a common framework [5], for example, we’ll automatically link your frontend sessions with backend errors and logs. No agents, configuring facets, or anything else, It just works.
We depend on several open source projects that help us move quickly. OpenTelemetry (OTEL) [6] is one of them, which helps us with maintainability, i.e. for every language that we support, we only maintain a thin wrapper around its respective OTEL SDK. OTEL is also a great way to enable the community to contribute, and we’re already seeing traction in this space (ie. an open source contributor built a wrapper for a Java SDK [7]).
rrweb [8] is another project we leverage heavily for our session replay product. It drives our ability to record and replay the DOM to visualize user flows in the frontend. We’ve had the privilege to work closely with the rrweb team to ship improvements, and we’re now actively sponsoring the project [9].
ClickHouse [10] has recently become a loved database on our team, as we historically used Opensearch for search-heavy workloads and started to hit growing pains with ingest throughput. We recently rolled it out for our logging product [3] and plan to replace our sessions and errors (and upcoming tracing work) with the database as well.
From a business perspective, Highlight.io is open source under the Apache 2.0 license, and we make money with our hosted product [11]. For the hosted product, you can set billing caps for each offering and we don’t charge for seats. At this point, we have 100+ companies paying for our product (some of which are large enterprises), and thousands of sole developers use Highlight.io every week.
On our roadmap [12] for the future includes metrics, tracing, release management and more. We also are launching several updates this week on our launch week page [13].
Overall, we’re excited to be sharing Highlight.io with the world, and Vadim and I are particularly excited to get some feedback from the HN community. Please give us a test-drive at https://app.highlight.io and let us know what you think. We would love to learn about what you wish you had in an observability product as well as any other experiences and ideas in this space. We look forward to hearing from you!
-
What are some really good open-source next js projects in productions that you can study from?
https://gitlab.com/hyperlink-academy/app https://github.com/highlight/highlight https://github.com/calcom/cal.com https://github.com/Nutlope/roomGPT
-
OpenObserve: Elasticsearch/Datadog alternative in Rust.. 140x lower storage cost
I'd be curious to hear how this compares to
https://qryn.metrico.in
and
https://github.com/highlight/highlight
(There are some interesting comparisons/comments vs signoiz in sibling threads).
-
Building a Type-Safe Tailwind with vanilla-extract
We only scratched the surface of vanilla-extract here, so check out the documentation if you’re interested in learning more. We’ll continue to share about how we are leveraging it to build the Highlight design system, and all our code is open source if you’re interested in exploring our usage more. All the code for the examples in this article are also available for anyone to fork and play around with as well.
opentelemetry-js
-
OpenTelemetry Journey #01 - Important concepts
JavaScript
-
OpenTelemetry in 2023
> OpenTelemetry is a marketing-driven project, designed by committee, implemented naively and inefficiently, and guided by the primary goal of allowing Fortune X00 CTOs to tick off some boxes on their strategy roadmap documents.
I'm the founder of highlight.io. On the consumer side as a company, we've seen a lot of value of from OTEL; we've used it to build out language support for quite a few customers at this point, and the community is very receptive.
Here's an example of us putting up a change: https://github.com/open-telemetry/opentelemetry-js/pull/4049
Do you mind sharing why you think no-one should be using it? Some reasoning would be nice.
-
OpenObserve: Elasticsearch/Datadog alternative in Rust.. 140x lower storage cost
That's traces? I was wondering if I could use https://github.com/open-telemetry/opentelemetry-js/tree/main...
-
OpenObserve: Open source Elasticsearch/Datadog/Splunk alternative in Rust for logs. 140x lower storage cost
Nothing like Faro for now. However, https://github.com/open-telemetry/opentelemetry-js can be used to achieve the same result and OpenObserve has great support for Opentelemetry.
- Deno 1.33: Deno 2 is coming
-
Observable front-end applications - an open source product experiment
Can it be integrated with Grafana Faro or OpenTelemetry?
-
Logs and tracing: not just for production, local development too
4. Register automatic instrumentations. For example, you can automatically trace all XHR requests, fetch requests, page loads, and user interactions. With distributed tracing, you should always prefer automatic instrumentation whenever possible to reduce maintenance and leverage existing conventions. The document load instrumentation allows you to treat the server as the parent span to a given page load, from which the client will then be the root span to everything in the server. This is an extremely powerful concept that allows traces to viewed from the perspective of the user, encapsulating all requests and user interactions in a single trace with no manual instrumentation!
We also trialed Sentry's APM tool (also marketed as a distributed tracing tool). While it had pretty charts, dashboards, niceties like core web vitals, and integrated well with Sentry's error product, its utility as a distributed tracing tool is significantly less powerful than tools like Honeycomb. You will end up using a large amount of your user's bandwidth sending telemetry data that can't fully be leveraged in the Sentry UI. When I last used (in April 2021), the spans of a given trace could only be viewed in a specific part the UI and they couldn't be searched for in queries or used in charts. I'm unsure if this has been updated. But this is not the worse part. Because Sentry uses its own data model for traces, it is not compatible with open source standards such as OpenTelemetry or OpenTracing! The sales team will not tell you this during the trial. This means our entire backend, which was already instrumented with OpenTracing, would now also need to instrument Sentry's tracing (...if they supported the language) in order to connect frontend traces to backend traces. Each team I met with their sales team, I said the same thing: support OpenTelemetry, otherwise you are asking for us to further isolate our backend and frontend teams.
It looks like they have heard this opinion, as they have recently published a blog post about the evolution of the distributed tracing API, citing incompatibility with OpenTelemetry due to their data model. It will require a very large change for them to support this. Meanwhile, OpenTelemetry can be used with any tracing vendor, a large number of languages, the other major instrumentation standards (OpenTracing, OpenCensus), and any trace propagation format.
- [1]: https://github.com/open-telemetry/opentelemetry-js
-
Monitoring consumer lag in Azure Event Hub
Consumer lag will quickly show any functional or technical issue with your event stream. By using the code examples from this blogpost, you can avoid having to dive into the SDKs yourself. Of course, you can adopt the metric collection to send the metric to the logs or to another metrics system like prometheus, datadog, or open telemetry.
-
Any good tutorial showing you which library to use for dependency injection in a project?
I would work on getting Open Telemetry pointed at an “all-in-one” Jaegar instance and move on from there: https://www.jaegertracing.io/docs/1.25/getting-started/ https://github.com/open-telemetry/opentelemetry-js Various cloud providers may have a way to collect/view traces as well, but, Jaegar and the Open Telemetry Collector are the open source way to do that. The projects are in the process of converging in some ways — everything is in flux.
-
Distributed Tracing 101 for Full Stack Developers
OpenTelemetry is a collection of open source tools, APIs, and SDKs for instrumenting, generating, and exporting telemetry data from running software. It provides language-specific implementations for most popular programming languages, including both browser JavaScript and Node.js.
What are some alternatives?
openobserve - 🚀 10x easier, 🚀 140x lower storage cost, 🚀 high performance, 🚀 petabyte scale - Elasticsearch/Splunk/Datadog alternative for 🚀 (logs, metrics, traces, RUM, Error tracking, Session replay).
Sentry - Developer-first error tracking and performance monitoring
PostHog - 🦔 PostHog provides open-source product analytics, session recording, feature flagging and A/B testing that you can self-host.
prom-client - Prometheus client for node.js
rrweb - record and replay the web
hyperdx - Resolve production issues, fast. An open source observability platform unifying session replays, logs, metrics, traces and errors powered by Clickhouse and 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
audiolm-pytorch - Implementation of AudioLM, a SOTA Language Modeling Approach to Audio Generation out of Google Research, in Pytorch
InversifyJS - A powerful and lightweight inversion of control container for JavaScript & Node.js apps powered by TypeScript.
openobserve-chart - Simplified Helm chart for single-node OpenObserve
nestjs-commander - A module for using NestJS to build up CLI applications