Skip to content

Commit 186c0b0

Browse files
authored
Modify main readme and contrib guide (open-telemetry#1581)
1 parent 19b9878 commit 186c0b0

File tree

2 files changed

+81
-110
lines changed

2 files changed

+81
-110
lines changed

CONTRIBUTING.md

+10-33
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
The Rust special interest group (SIG) meets weekly on Tuesdays at 9 AM Pacific
44
Time. The meeting is subject to change depending on contributors'
55
availability. Check the [OpenTelemetry community
6-
calendar](https://calendar.google.com/calendar/embed?src=google.com_b79e3e90j7bbsa2n2p5an5lf60%40group.calendar.google.com)
6+
calendar](https://github.com/open-telemetry/community?tab=readme-ov-file#calendar)
77
for specific dates and for Zoom meeting links. "OTel Rust SIG" is the name of
88
meeting for this group.
99

@@ -17,6 +17,15 @@ regardless of your experience level. Whether you're a seasoned OpenTelemetry
1717
developer, just starting your journey, or simply curious about the work we do,
1818
you're more than welcome to participate!
1919

20+
Even though, anybody can contribute, there are benefits of being a member of our
21+
community. See to the [community membership
22+
document](https://github.com/open-telemetry/community/blob/main/community-membership.md)
23+
on how to become a
24+
[**Member**](https://github.com/open-telemetry/community/blob/main/community-membership.md#member),
25+
[**Approver**](https://github.com/open-telemetry/community/blob/main/community-membership.md#approver)
26+
and
27+
[**Maintainer**](https://github.com/open-telemetry/community/blob/main/community-membership.md#maintainer).
28+
2029
## Pull Requests
2130

2231
### Prerequisites
@@ -173,38 +182,6 @@ projects in this workspace.
173182
- Run `cargo bench` - this will run benchmarks to show performance
174183
regressions
175184

176-
## Approvers and Maintainers
177-
178-
For GitHub groups see the [code owners](CODEOWNERS) file.
179-
180-
### Maintainers
181-
182-
* [Cijo Thomas](https://github.com/cijothomas)
183-
* [Harold Dost](https://github.com/hdost)
184-
* [Julian Tescher](https://github.com/jtescher)
185-
* [Zhongyang Wu](https://github.com/TommyCpp)
186-
187-
### Approvers
188-
189-
* [Lalit Kumar Bhasin](https://github.com/lalitb)
190-
* [Shaun Cox](https://github.com/shaun-cox)
191-
192-
### Emeritus
193-
194-
- [Dirkjan Ochtman](https://github.com/djc)
195-
- [Jan Kühle](https://github.com/frigus02)
196-
- [Isobel Redelmeier](https://github.com/iredelmeier)
197-
- [Mike Goldsmith](https://github.com/MikeGoldsmith)
198-
199-
### Become an Approver or a Maintainer
200-
201-
See the [community membership document in OpenTelemetry community
202-
repo](https://github.com/open-telemetry/community/blob/master/community-membership.md).
203-
204-
### Thanks to all the people who have contributed
205-
206-
[![contributors](https://contributors-img.web.app/image?repo=open-telemetry/opentelemetry-rust)](https://github.com/open-telemetry/opentelemetry-rust/graphs/contributors)
207-
208185
## FAQ
209186

210187
### Where should I put third party propagators/exporters, contrib or standalone crates?

README.md

+71-77
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,3 @@
1-
![OpenTelemetry — An observability framework for cloud-native software.][splash]
2-
3-
[splash]: https://raw.githubusercontent.com/open-telemetry/opentelemetry-rust/main/assets/logo-text.png
4-
51
# OpenTelemetry Rust
62

73
The Rust [OpenTelemetry](https://opentelemetry.io/) implementation.
@@ -13,10 +9,6 @@ The Rust [OpenTelemetry](https://opentelemetry.io/) implementation.
139
[![codecov](https://codecov.io/gh/open-telemetry/opentelemetry-rust/branch/main/graph/badge.svg)](https://codecov.io/gh/open-telemetry/opentelemetry-rust)
1410
[![Slack](https://img.shields.io/badge/slack-@cncf/otel/rust-brightgreen.svg?logo=slack)](https://cloud-native.slack.com/archives/C03GDP0H023)
1511

16-
[Website](https://opentelemetry.io/) |
17-
[Slack](https://cloud-native.slack.com/archives/C03GDP0H023) |
18-
[Documentation](https://docs.rs/opentelemetry)
19-
2012
## Overview
2113

2214
OpenTelemetry is a collection of tools, APIs, and SDKs used to instrument,
@@ -48,7 +40,6 @@ available:
4840

4941
* [opentelemetry-appender-log](opentelemetry-appender-log/README.md)
5042
* [opentelemetry-appender-tracing](opentelemetry-appender-tracing/README.md)
51-
* opentelemetry-appender-slog // TODO: Add link once available
5243

5344
If you already use the logging APIs from above, continue to use them, and use
5445
the appenders above to bridge the logs to OpenTelemetry. If you are using a
@@ -91,89 +82,65 @@ The example above requires the following packages:
9182
```toml
9283
# Cargo.toml
9384
[dependencies]
94-
opentelemetry = "0.21"
95-
opentelemetry_sdk = "0.21"
96-
opentelemetry-stdout = { version = "0.2", features = ["trace"] }
85+
opentelemetry = "0.22"
86+
opentelemetry_sdk = "0.22"
87+
opentelemetry-stdout = { version = "0.3", features = ["trace"] }
9788
```
9889

9990
See the [examples](./examples) directory for different integration patterns.
10091

101-
## Ecosystem
102-
103-
### Related Crates
104-
105-
In addition to `opentelemetry`, the [`open-telemetry/opentelemetry-rust`]
106-
repository contains several additional crates designed to be used with the
107-
`opentelemetry` ecosystem. This includes a collection of trace `SpanExporter`
108-
and metrics pull and push controller implementations, as well as utility and
109-
adapter crates to assist in propagating state and instrumenting applications.
110-
111-
In particular, the following crates are likely to be of interest:
112-
113-
* [`opentelemetry-aws`] provides unofficial propagators for AWS X-ray.
114-
* [`opentelemetry-datadog`] provides additional exporters to [`Datadog`].
115-
* [`opentelemetry-dynatrace`] provides additional exporters to Dynatrace.
116-
* [`opentelemetry-contrib`] provides additional exporters and propagators that
117-
are experimental.
118-
* [`opentelemetry-http`] provides an interface for injecting and extracting
119-
trace information from [`http`] headers.
120-
* [`opentelemetry-jaeger`] provides context propagation using [jaeger propagation format](https://www.jaegertracing.io/docs/1.18/client-libraries/#propagation-format).
121-
* [`opentelemetry-otlp`] exporter for sending trace and metric data in the OTLP
122-
format to the OpenTelemetry collector.
92+
## Overview of crates
93+
94+
The following crates are maintained in this repo:
95+
96+
* [`opentelemetry`] This is the OpenTelemetry API crate, and is the crate
97+
required to instrument libraries and applications. It contains Logging Bridge
98+
API, Metrics API, and Tracing API.
99+
* [`opentelemetry-sdk`] This is the OpenTelemetry SDK crate, and contains the
100+
official OpenTelemetry SDK implementation. It contains Logging SDK, Metrics
101+
SDK, and Tracing SDK.
102+
* [`opentelemetry-otlp`] exporter for sending logs, metrics and traces in the
103+
OTLP format to an endpoint accepting OTLP, typically the OpenTelemetry
104+
collector.
105+
* [`opentelemetry-stdout`] exporter for sending logs, metrics and traces to
106+
stdout, for learning/debugging purposes.
107+
* [`opentelemetry-http`] This crate contains utility functions to help with
108+
exporting telemetry, propagation, over [`http`].
109+
* [`opentelemetry-appender-log`] This crate provides logging appender to route
110+
logs emitted using the `log` crate to opentelemetry.
111+
* [`opentelemetry-appender-tracing`] This crate provides logging appender to route
112+
logs emitted using the `tracing` crate to opentelemetry.
113+
* [`opentelemetry-jaeger-propagator`] provides context propagation using [jaeger
114+
propagation
115+
format](https://www.jaegertracing.io/docs/1.18/client-libraries/#propagation-format).
123116
* [`opentelemetry-prometheus`] provides a pipeline and exporter for sending
124-
metrics information to [`Prometheus`].
117+
metrics to [`Prometheus`].
125118
* [`opentelemetry-semantic-conventions`] provides standard names and semantic
126119
otel conventions.
127-
* [`opentelemetry-stackdriver`] provides an exporter for Google's [Cloud Trace]
128-
(which used to be called StackDriver).
129-
* [`opentelemetry-zipkin`] provides a pipeline and exporter for sending trace
130-
information to [`Zipkin`].
131-
132-
Additionally, there are also several third-party crates which are not
133-
maintained by the `opentelemetry` project. These include:
134-
135-
* [`tracing-opentelemetry`] provides integration for applications instrumented
136-
using the [`tracing`] API and ecosystem.
137-
* [`actix-web-opentelemetry`] provides integration for the [`actix-web`] web
138-
server and ecosystem.
139-
* [`opentelemetry-application-insights`] provides an unofficial [Azure
140-
Application Insights] exporter.
141-
* [`opentelemetry-tide`] provides integration for the [`Tide`] web server and
142-
ecosystem.
143-
* [`trillium-opentelemetry`] provides metrics instrumentation for [`trillium`] http servers following [semantic-conventions](https://github.com/open-telemetry/semantic-conventions/blob/main/docs/http/http-metrics.md).
144-
145-
If you're the maintainer of an `opentelemetry` ecosystem crate not listed
146-
above, please let us know! We'd love to add your project to the list!
147-
148-
[`open-telemetry/opentelemetry-rust`]: https://github.com/open-telemetry/opentelemetry-rust
149-
[`opentelemetry-jaeger`]: https://crates.io/crates/opentelemetry-jaeger
150-
[`opentelemetry-otlp`]: https://crates.io/crates/opentelemetry-otlp
120+
* [`opentelemetry-zipkin`] provides a pipeline and exporter for sending traces
121+
to [`Zipkin`].
122+
123+
In addition, there are several other useful crates in the [OTel Rust Contrib
124+
repo](https://github.com/open-telemetry/opentelemetry-rust-contrib). A lot of
125+
crates maintained outside OpenTelemetry owned repos can be found in the
126+
[OpenTelemetry
127+
Registry](https://opentelemetry.io/ecosystem/registry/?language=rust).
128+
129+
[`opentelemetry`]: https://crates.io/crates/opentelemetry
130+
[`opentelemetry-sdk`]: https://crates.io/crates/opentelemetry-sdk
131+
[`opentelemetry-appender-log`]: https://crates.io/crates/opentelemetry-appender-log
132+
[`opentelemetry-appender-tracing`]: https://crates.io/crates/opentelemetry-appender-tracing
151133
[`opentelemetry-http`]: https://crates.io/crates/opentelemetry-http
134+
[`opentelemetry-otlp`]: https://crates.io/crates/opentelemetry-otlp
135+
[`opentelemetry-stdout`]: https://crates.io/crates/opentelemetry-stdout
136+
[`opentelemetry-jaeger-propagator`]: https://crates.io/crates/opentelemetry-jaeger-propagator
152137
[`opentelemetry-prometheus`]: https://crates.io/crates/opentelemetry-prometheus
153-
[`opentelemetry-aws`]: https://crates.io/crates/opentelemetry-aws
154138
[`Prometheus`]: https://prometheus.io
155139
[`opentelemetry-zipkin`]: https://crates.io/crates/opentelemetry-zipkin
156140
[`Zipkin`]: https://zipkin.io
157-
[`opentelemetry-contrib`]: https://crates.io/crates/opentelemetry-contrib
158-
[`Datadog`]: https://www.datadoghq.com
159-
[`opentelemetry-datadog`]: https://crates.io/crates/opentelemetry-datadog
160-
[`opentelemetry-dynatrace`]: https://crates.io/crates/opentelemetry-dynatrace
161141
[`opentelemetry-semantic-conventions`]: https://crates.io/crates/opentelemetry-semantic-conventions
162142
[`http`]: https://crates.io/crates/http
163143

164-
[`tracing-opentelemetry`]: https://crates.io/crates/tracing-opentelemetry
165-
[`tracing`]: https://crates.io/crates/tracing
166-
[`actix-web-opentelemetry`]: https://crates.io/crates/actix-web-opentelemetry
167-
[`actix-web`]: https://crates.io/crates/actix-web
168-
[`opentelemetry-application-insights`]: https://crates.io/crates/opentelemetry-application-insights
169-
[Azure Application Insights]: https://docs.microsoft.com/azure/azure-monitor/app/app-insights-overview
170-
[`opentelemetry-tide`]: https://crates.io/crates/opentelemetry-tide
171-
[`Tide`]: https://crates.io/crates/tide
172-
[`opentelemetry-stackdriver`]: https://crates.io/crates/opentelemetry-stackdriver
173-
[Cloud Trace]: https://cloud.google.com/trace/
174-
[`trillium-opentelemetry`]: https://github.com/trillium-rs/trillium-opentelemetry
175-
[`trillium`]: https://github.com/trillium-rs/trillium
176-
177144
## Supported Rust Versions
178145

179146
OpenTelemetry is built against the latest stable release. The minimum supported
@@ -207,3 +174,30 @@ The meeting is open for all to join. We invite everyone to join our meeting,
207174
regardless of your experience level. Whether you're a seasoned OpenTelemetry
208175
developer, just starting your journey, or simply curious about the work we do,
209176
you're more than welcome to participate!
177+
178+
## Approvers and Maintainers
179+
180+
For GitHub groups see the [code owners](CODEOWNERS) file.
181+
182+
### Maintainers
183+
184+
* [Cijo Thomas](https://github.com/cijothomas)
185+
* [Harold Dost](https://github.com/hdost)
186+
* [Julian Tescher](https://github.com/jtescher)
187+
* [Zhongyang Wu](https://github.com/TommyCpp)
188+
189+
### Approvers
190+
191+
* [Lalit Kumar Bhasin](https://github.com/lalitb)
192+
* [Shaun Cox](https://github.com/shaun-cox)
193+
194+
### Emeritus
195+
196+
* [Dirkjan Ochtman](https://github.com/djc)
197+
* [Jan Kühle](https://github.com/frigus02)
198+
* [Isobel Redelmeier](https://github.com/iredelmeier)
199+
* [Mike Goldsmith](https://github.com/MikeGoldsmith)
200+
201+
### Thanks to all the people who have contributed
202+
203+
[![contributors](https://contributors-img.web.app/image?repo=open-telemetry/opentelemetry-rust)](https://github.com/open-telemetry/opentelemetry-rust/graphs/contributors)

0 commit comments

Comments
 (0)