b3-propagation
self-hosted
b3-propagation | self-hosted | |
---|---|---|
3 | 30 | |
518 | 7,334 | |
1.0% | 2.2% | |
2.7 | 9.1 | |
3 months ago | 4 days ago | |
Shell | ||
Apache License 2.0 | GNU General Public License v3.0 or later |
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.
b3-propagation
-
OpenTelemetry in 2023
I've been playing with OTEL for a while, with a few backends like Jaeger and Zipkin, and am trying to figure out a way to perform end to end timing measurements across a graph of services triggered by any of several events.
Consider this scenario: There is a collection of services that talk to one another, and not all use HTTP. Say agent A0 makes a connection to agent A1, this is observed by service S0 which triggers service S1 to make calls to S2 and S3, which propagate elsewhere and return answers.
If we limit the scope of this problem to services explicitly making HTTP calls to other services, we can easily use the Propagators API [1] and use X-B3 headers [2] to propagate the trace context (trace ID, span ID, parent span ID) across this graph, from the origin through to the destination and back. This allows me to query the metrics collector (Jaeger or Zipkin) using this trace ID, look at the timestamps originating at the various services and do a T_end - T_start to determine the overall time taken by one call for a round trip across all the related services.
However, this breaks when a subset of these functions cannot propagate the B3 trace IDs for various reasons (e.g., a service is watching a specific state and acts when the state changes). I've been looking into OTEL and other related non-OTEL ways to capture metrics, but it appears there's not much research into this area though it does not seem like a unique or new problem.
Has anyone here looked at this scenario, and have you had any luck with OTEL or other mechanisms to get results?
[1] https://opentelemetry.io/docs/specs/otel/context/api-propaga...
[2] https://github.com/openzipkin/b3-propagation
[3] https://www.w3.org/TR/trace-context/
-
OpenTelemetry and Istio: Everything you need to know
(Note that OpenTelemetry uses, by default, the W3C context propagation specification, while Istio uses the B3 context propagation specification – this can be modified).
-
Spring Cloud Sleuth in action
The default format for context propagation is B3 so we use headers X-B3-TraceId and X-B3-SpanId
self-hosted
-
Pydantic Logfire
I was responding to the One of the Sentry inconvenience is self-hosting: it relies on so many services it can be very complicated to maintain part, and also reminding readers that if they, too, hate companies that rug-pull their open source licenses, there is a band-aid for both parts
Compare https://github.com/getsentry/self-hosted/blob/9.1.2/docker-c... with https://github.com/getsentry/self-hosted/blob/24.4.2/docker-... for what life used to be like for running Sentry on-prem. It was awesome
It would take a ton of work to dig up the actual memory and CPU requirements of each one, but rest assured they're not zero, so every one of those services eats ram and requires TLC when, not if, they shit themselves. So, more parts == more headaches with all other things being equal
Then, I deeply appreciate that there are a whole spectrum of reactions to the various licensing schemes in use nowadays, and a bunch of folks don't care. I care, though, because I have gotten immense value from open source projects, and have contributed changes back to quite a few. It has been my life experience that any of those "source available" licenses usually are very hostile toward making local builds and if I can't build it to match how prod goes, then I can't test my fixes in my environment and then I can't contribute the PR with any faith
-
Sentry new TOS to use data to train AI with no opt-out
This is the point where I will point out that you can self-host Sentry free of charge :) https://develop.sentry.dev/self-hosted/
-
Low cost self-hosted bug reporting?
Sentry can be self hosted: https://develop.sentry.dev/self-hosted/
-
FSL: A License for the Bazaar, Not the Cathedral
The people we're concerned about are not the hundreds of thousands of Sentry users, including those that self-host.
We're concerned about people who have taken the software for the purposes of competing directly against us, that hinders our ability to monetize the work. Monetizing the work helps us continue improving the software and distribute it for free use, benefitting those aforementioned real users (e.g. https://github.com/getsentry/self-hosted).
-
Show HN: A open-source financial accounting alternative to QuickBooks
> I mean no slander or disrespect to anyone involved, but there was a DataDog alternative posted sometime in the last few weeks that had a docker-compose with like 15 containers in it.
Reminds me of Sentry: https://develop.sentry.dev/self-hosted/
This is their example docker-compose for self-hosting: https://github.com/getsentry/self-hosted/blob/master/docker-...
It has:
- exim4 (smtp)
-
OpenTelemetry in 2023
> What should people use?
I recall Apache Skywalking being pretty good, especially for smaller/medium scale projects: https://skywalking.apache.org/
The architecture is simple, the performance is adequate, it doesn't make you spend days configuring it and it even supports various different data stores: https://skywalking.apache.org/docs/main/v9.0.0/en/setup/back...
The problems with it are that it isn't super popular (although has agents for most popular stacks), the docs could be slightly better and I recall them also working on a new UI so there is a little bit of churn: https://skywalking.apache.org/downloads/
Still better versus some of the other options when you need something that just works instead of spending a lot of time configuring something (even when that something might be superior in regards to the features): https://github.com/getsentry/self-hosted/blob/master/docker-...
Sentry is just the first thing that comes to mind (OpenTelemetry also isn't simpler due to how much it tries to do), but compare its complexity to Skywalking: https://github.com/apache/skywalking/blob/master/docker/dock...
I wish there was more self-hosted software like that out there, enough to address certain concerns in a simple way on day 1 and leave branching out to more complex options like OpenTelemetry once you have a separate team for that and the cash is rolling in.
- Why use application stacks script installers
-
OpenObserve: Elasticsearch/Datadog alternative in Rust.. 140x lower storage cost
Sounds interesting!
Will you compare with qryn? Self-hosted sentry?
qryn.metrico.in/
https://develop.sentry.dev/self-hosted/
-
Insufficient logging
I haven't done it in years, but technically sentry is able to be self hosted https://github.com/getsentry/self-hosted
- Cloud Native Alternative to Sentry?
What are some alternatives?
trace-context-w3c - W3C Trace Context purpose of and what kind of problem it came to solve.
Sentry - Developer-first error tracking and performance monitoring
zipkin - Zipkin is a distributed tracing system
Code-Server - VS Code in the browser
spring-cloud-sleuth-in-action - 🍀 Spring Cloud Sleuth in Action
apprise - Apprise - Push Notifications that work with just about every platform!
odigos - Distributed tracing without code changes. 🚀 Instantly monitor any application using OpenTelemetry and eBPF
zammad-docker-compose - Zammad Docker images for docker-compose
community - OpenTelemetry community content
ML-Workspace - 🛠 All-in-one web-based IDE specialized for machine learning and data science.
oteps - OpenTelemetry Enhancement Proposals
JupyterLab - JupyterLab computational environment.