diff --git a/website_docs/configuring_automatic_instrumentation.md b/website_docs/automatic.md similarity index 90% rename from website_docs/configuring_automatic_instrumentation.md rename to website_docs/automatic.md index de52df4f16..af2d5f398b 100644 --- a/website_docs/configuring_automatic_instrumentation.md +++ b/website_docs/automatic.md @@ -1,6 +1,8 @@ --- -title: Configuring automatic instrumentation -weight: 5 +title: Automatic instrumentation +linkTitle: Automatic +spelling: cSpell:ignore faraday sinatra +weight: 2 --- Automatic instrumentation in ruby is done via instrumentation packages, and most commonly, the `opentelemetry-instrumentation-all` package. These are called Instrumentation Libraries. @@ -52,7 +54,7 @@ To override more instrumentation, add another entry in the `config` map. ### Configuring specific instrumentation libraries -If you prefer more selectively installing and using only specific instrumentation libraries, you can do that too. For example, here's how to use only `Sinatra` and `Faraday`, with `Farady` being configured with an additional configuration parameter. +If you prefer more selectively installing and using only specific instrumentation libraries, you can do that too. For example, here's how to use only `Sinatra` and `Faraday`, with `Faraday` being configured with an additional configuration parameter. First, install the specific instrumentation libraries you know you want to use: @@ -76,4 +78,4 @@ end ### Next steps -Instrumentation libraries are the easiest way to generate lots of useful telemetry data about your ruby apps. But they don't generate data specific to your application's logic! To do that, you'll need to enrich the automatic instrumentation from instrumentation libraries with [manual instrumentation](manual_instrumentation). +Instrumentation libraries are the easiest way to generate lots of useful telemetry data about your ruby apps. But they don't generate data specific to your application's logic! To do that, you'll need to enrich the automatic instrumentation from instrumentation libraries with [manual instrumentation](../manual). diff --git a/website_docs/context_propagation.md b/website_docs/context-propagation.md similarity index 97% rename from website_docs/context_propagation.md rename to website_docs/context-propagation.md index e98282fa36..06ee9849c0 100644 --- a/website_docs/context_propagation.md +++ b/website_docs/context-propagation.md @@ -1,5 +1,6 @@ --- title: Context Propagation +spelling: cSpell:ignore tracecontext weight: 2 --- diff --git a/website_docs/events.md b/website_docs/events.md index b11fad6338..e7fbcc492d 100644 --- a/website_docs/events.md +++ b/website_docs/events.md @@ -1,5 +1,6 @@ --- -title: "Span Events" +title: Span Events +spelling: cSpell:ignore mutex SIGHUP weight: 3 --- diff --git a/website_docs/getting_started.md b/website_docs/getting-started.md similarity index 69% rename from website_docs/getting_started.md rename to website_docs/getting-started.md index 28d840ff7b..a3e97b000f 100644 --- a/website_docs/getting_started.md +++ b/website_docs/getting-started.md @@ -4,8 +4,8 @@ weight: 1 --- [OpenTelemetry for Ruby][repository] can be used to add automatic and manual instrumentation to your applications. -Automatic instrumentation is enabled by adding [instrumentation packages][auto-instrumentation]. -Manual instrumentation can be added using the [OpenTelemetry API][manual-instrumentation]. +Automatic instrumentation is enabled by adding [instrumentation packages][auto]. +Manual instrumentation can be added using the [OpenTelemetry API][manual]. ### Requirements @@ -25,7 +25,7 @@ gem 'opentelemetry-exporter-otlp' gem 'opentelemetry-instrumentation-all' ``` -The inclusion of `opentelemetry-instrumentation-all` provides [instrumentations](auto-instrumentation) for Rails, Sinatra, several HTTP libraries, and more. +The inclusion of `opentelemetry-instrumentation-all` provides [instrumentations][auto] for Rails, Sinatra, several HTTP libraries, and more. ### Initialization @@ -46,7 +46,7 @@ OpenTelemetry::SDK.configure do |c| end ``` -The call `c.use_all()` enables all instrumentations in the `instrumentation/all` package. If you have more advanced configuration needs, see [configuring specific instrumentation libraries](configure-specific-libraries). +The call `c.use_all()` enables all instrumentations in the `instrumentation/all` package. If you have more advanced configuration needs, see [configuring specific instrumentation libraries][config]. Now that you have setup your application to perform tracing, you'll need to configure the SDK to export the traces somewhere. Our example loaded the `OTLP` exporter, which the SDK tries to use by default. Next, we'll use the OpenTelemetry Collector to receive these traces and visualize them using Jaeger and Zipkin! @@ -75,23 +75,25 @@ Now, start up your application and perform a few operations to generate tracing Lastly, open a browser and navigate to the [Jaeger UI](http://localhost:16686) or [Zipkin UI](http://localhost:9411) and search for traces related to your service, which were generated by the auto-instrumentation features of OpenTelemetry! -### Achievement Unlocked: Tracing Enabled - -Adding tracing to a single service is a great first step and although auto-instrumentation provides quite a bit of insight on its own, OpenTelemetry provides a few more features that will allow you gain even deeper insights! - -[Context Propagation][context-propagation] is perhaps one of the most powerful concepts in OpenTelemetry because it will upgrade your single service trace into a _distributed trace_, which makes it possible for OpenTelemetry vendors to visualize a request from end-to-end across process and network boundaries. - -[Span Events][events] allow you to add a human-readable message on a span that represents "something happening" during its lifetime. - -[Manual Instrumentation][manual-instrumentation] will give provide you the ability to enrich your traces with domain specific data. - -[Automatic Instrumentation][auto-instrumentation] - - +### What next? + +Adding tracing to a single service is a great first step and although +auto-instrumentation provides quite a bit of insight on its own, OpenTelemetry +provides a few more features that will allow you gain even deeper insights! + +- [Context propagation][] is perhaps one of the most powerful + concepts in OpenTelemetry because it will upgrade your single service trace + into a _distributed trace_, which makes it possible for OpenTelemetry vendors + to visualize a request from end-to-end across process and network boundaries. +- [Span events][] allow you to add a human-readable message on a span that + represents "something happening" during its lifetime. +- [Manual instrumentation][manual] will give provide you the ability to enrich + your traces with domain specific data. + +[auto]: https://github.com/open-telemetry/opentelemetry-ruby#instrumentation-libraries +[config]: {{< relref "automatic#configuring-specific-instrumentation-libraries" >}} +[Context propagation]: ../context-propagation +[manual]: ../manual [repository]: https://github.com/open-telemetry/opentelemetry-ruby -[auto-instrumentation]: https://github.com/open-telemetry/opentelemetry-ruby#instrumentation-libraries [sdk-env]: {{< relref "/docs/reference/specification/protocol/exporter#configuration-options" >}} -[context-propagation]: ../context_propagation -[events]: ../events -[manual-instrumentation]: ../manual_instrumentation -[configure-specific-libraries]: {{< relref "configuring_automatic_instrumentation#configuring-specific-instrumentation-libraries" >}} +[Span events]: ../events diff --git a/website_docs/manual_instrumentation.md b/website_docs/manual.md similarity index 98% rename from website_docs/manual_instrumentation.md rename to website_docs/manual.md index e5390566d8..eb24bfcc68 100644 --- a/website_docs/manual_instrumentation.md +++ b/website_docs/manual.md @@ -1,5 +1,6 @@ --- -title: "Manual Instrumentation" +title: Manual Instrumentation +linkTitle: Manual weight: 4 ---