Skip to content

Commit

Permalink
fixes formatting
Browse files Browse the repository at this point in the history
  • Loading branch information
reese-lee committed Apr 12, 2024
2 parents bf81b24 + 0275eec commit 5e624fb
Show file tree
Hide file tree
Showing 318 changed files with 1,193 additions and 590 deletions.
2 changes: 2 additions & 0 deletions .cspell.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ version: '0.2'
caseSensitive: true
ignorePaths:
- '*.svg'
- 'vendors.yaml'
# words here are only listed for their spelling, if there is a certain way
# to write a word (e.g. OpenTelemetry vs Opentelemetry or cloud native vs
# cloud-native), edit the text-lint rules in .textlintrc.yml
Expand Down Expand Up @@ -170,3 +171,4 @@ words:
- WSGI
- zend
- zipkin
- Chronosphere
23 changes: 16 additions & 7 deletions .github/workflows/check-text.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,18 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
# Make sure that we only install the dependencies for textlint to speed up install
- run: |
- name: Create and use reduced-dependencies package.json
run: |
mkdir -p tmp
jq '.devDependencies |= with_entries( select(.key | startswith("textlint")))
| del(.dependencies, .optionalDependencies)' \
package.json > tmp/package-min.json
cp tmp/package-min.json package.json
package.json > tmp/package-ci.json
cp tmp/package-ci.json package.json
- uses: actions/setup-node@v4
with:
node-version-file: .nvmrc
cache: npm
cache-dependency-path: tmp/package-ci.json
- run: npm install --ignore-scripts --omit=optional
- run: .github/workflows/scripts/textlint.sh

Expand All @@ -24,15 +29,19 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Create and use reduced-dependencies package.json
run: |
mkdir -p tmp
jq '.devDependencies |= with_entries(
select(.key | test("gulp|markdown|through|require|yargs"))
)
| del(.dependencies, .optionalDependencies)' \
package.json > tmp/package-min.json
cp tmp/package-min.json package.json
package.json > tmp/package-ci.json
cp tmp/package-ci.json package.json
- uses: actions/setup-node@v4
with:
node-version-file: .nvmrc
cache: npm
cache-dependency-path: tmp/package-ci.json
- run: npm install --ignore-scripts --omit=optional
- run: npm run check:markdown
2 changes: 1 addition & 1 deletion .github/workflows/pr-actions.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
pull-requests: write

env:
DEPTH: --depth 100 # submodule clone depth
DEPTH: --depth 1000 # submodule clone depth

steps:
- name: Extract action name
Expand Down
11 changes: 6 additions & 5 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
[submodule "themes/docsy"]
path = themes/docsy
url = https://github.com/cncf/docsy.git
docsy-pin = v0.9.1
docsy-reminder = "Ensure that all tags from google/docsy are also present in cncf/docsy, otherwise add (push) them."
url = https://github.com/google/docsy.git
docsy-pin = v0.9.1-17-gb077a74
docsy-note = "2024-04-01 Switching to google/docsy.git from cncf/docsy.git since we don't have any CNCF customizations."
docsy-reminder = "Ensure that any tag referenced by `docsy-pin` is present in the remote repo (url), otherwise add (push) the tags to the repo."
[submodule "content-modules/opentelemetry-specification"]
path = content-modules/opentelemetry-specification
url = https://github.com/open-telemetry/opentelemetry-specification.git
Expand All @@ -14,11 +15,11 @@
[submodule "content-modules/opentelemetry-proto"]
path = content-modules/opentelemetry-proto
url = https://github.com/open-telemetry/opentelemetry-proto
otlp-pin = v1.1.0
otlp-pin = v1.2.0
[submodule "content-modules/semantic-conventions"]
path = content-modules/semantic-conventions
url = https://github.com/open-telemetry/semantic-conventions
semconv-pin = v1.24.0
semconv-pin = v1.25.0
[submodule "content-modules/opamp-spec"]
path = content-modules/opamp-spec
url = https://github.com/open-telemetry/opamp-spec
Expand Down
4 changes: 2 additions & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,8 +69,8 @@ PR shortly or let maintainers now if you run into any blockers.
## Contributor's guide

To learn how to contribute fixes and new content to this project, read the
[Contributor's guide](/content/en/docs/contributing), which includes a style
guide and useful information on the review process.
[Contributor's guide](https://opentelemetry.io/docs/contributing/), which
includes a style guide and useful information on the review process.

## Development

Expand Down
2 changes: 1 addition & 1 deletion content-modules/semantic-conventions
2 changes: 1 addition & 1 deletion content/en/blog/2023/kubecon-na.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: Join us for OpenTelemetry Talks and Activities at KubeCon NA 2023
linkTitle: KubeCon NA '23
date: 2023-10-02
# prettier-ignore
cSpell:ignore: Anusha Aronoff Benedikt Bongartz Broadbridge Chronosphere Contribfest Coralogix Danielson Endo Flamegraphs Hrabovcak Itiel Itoh Jaglowski Kanal Komodor Kota Masanori Matej Mirabella Narapureddy observ Ohly Pivotto Purvi Reddy Sharone Shishi Shivanshu Shrivastava Shwartz Zitzman
cSpell:ignore: Anusha Aronoff Benedikt Bongartz Broadbridge Contribfest Coralogix Danielson Endo Flamegraphs Hrabovcak Itiel Itoh Jaglowski Kanal Komodor Kota Masanori Matej Mirabella Narapureddy observ Ohly Pivotto Purvi Reddy Sharone Shishi Shivanshu Shrivastava Shwartz Zitzman
author: '[Severin Neumann](https://github.com/svrnm) (Cisco)'
---

Expand Down
38 changes: 31 additions & 7 deletions content/en/blog/2024/otel-errors/index.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
title: Dude, where's my error? How OpenTelemetry records errors
linkTitle: Understanding OTel Errors
<<<<<<< HEAD
date: 2024-03-06
author:
>- # If you have only one author, then add the single name on this line in quotes.
Expand All @@ -9,7 +10,18 @@ author:
canonical_url: https://newrelic.com/blog/how-to-relic/dude-wheres-my-error
---

![A confused penguin trying to learn about errors and exceptions](penguin-chalkboard.jpg)
# ![A confused penguin trying to learn about errors and exceptions](penguin-chalkboard.jpg)

date: 2024-03-27 author: >- [Reese Lee](https://github.com/reese-lee) (New
Relic), [Adriana Villela](https://github.com/avillela) (ServiceNow)
cSpell:ignore: Dalle canonical_url:
https://newrelic.com/blog/how-to-relic/dude-wheres-my-error

---

![A confused penguin trying to learn about errors and exceptions. Image generated with AI using Dalle3 via Bing Copilot](penguin-chalkboard.jpg)

> > > > > > > 0275eecadaf56ff79a91c6044ad526b040967c1d
Depending on the language you’re used to developing in, you may have certain
ideas about what an error is, as well as what constitutes an exception and how
Expand Down Expand Up @@ -177,9 +189,13 @@ further information of what led to that error, by pulling up the correlated
trace.

To record an error on a log, either `exception.type` or `exception.message` is
required, while `exception.stacktrace` is recommended. You can view more
information about the semantic conventions for log exceptions
[here](/docs/specs/semconv/exceptions/exceptions-logs/).
<<<<<<< HEAD required, while `exception.stacktrace` is recommended. You can view
more information about the semantic conventions for log exceptions
[here](/docs/specs/semconv/exceptions/exceptions-logs/). ======= required, while
`exception.stacktrace` is recommended. For more information, see
[Semantic Conventions for Exceptions in Logs](/docs/specs/semconv/exceptions/exceptions-logs/).

> > > > > > > 0275eecadaf56ff79a91c6044ad526b040967c1d
## Logs or spans to capture errors?

Expand Down Expand Up @@ -285,6 +301,14 @@ than vendors might have previously done.
By leveraging OTel's capabilities to record errors through logs and spans and to
enhance them with metadata, you can gain deeper insights into your applications'
behavior and more effectively troubleshoot issues. You'll be better equipped to
build and maintain resilient, reliable, and high-performing software
applications in today's dynamic and demanding environments. Learn more about
error handling in OTel [here](/docs/specs/otel/error-handling/).
build and maintain resilient, reliable, and high-performing software <<<<<<<
HEAD applications in today's dynamic and demanding environments. Learn more
about error handling in OTel [here](/docs/specs/otel/error-handling/). =======
applications in today's dynamic and demanding environments. To learn more, see
[Error handling in OpenTelemetry](/docs/specs/otel/error-handling/).

_A version of this article was
[originally posted](https://newrelic.com/blog/how-to-relic/dude-wheres-my-error)
on the New Relic blog._

> > > > > > > 0275eecadaf56ff79a91c6044ad526b040967c1d
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
---
title: OpenTelemetry announces support for profiling
linkTitle: OpenTelemetry announces support for profiling
linkTitle: Profiling support
date: 2024-03-19
author: '[Austin Parker](https://github.com/austinlparker) (Honeycomb)'
aliases: [opentelemetry-announced-support-for-profiling]
cSpell:ignore: Alexandrov Alexey Dmitry Filimonov Geisendörfer Halliday
---

In 2023, OpenTelemetry announced that it achieved stability for
Expand All @@ -12,8 +14,41 @@ vision of enabling built-in observability for cloud native applications requires
us to continue evolving with the community. This year, we’re proud to announce
that exactly two years after the Profiling SIG was created at KubeCon +
CloudNativeCon Europe 2022 in Valencia, we’re taking a big step towards this
goal by merging a profiling data model into our specification and working
towards a stable implementation this year!
goal by merging a profiling data model OTEP and working towards a stable spec
and implementation this year!

This milestone for the OpenTelemetry profiling signal reflects a collaborative
effort within the profiling SIG, where dedicated input from a diverse range of
profiling vendors and end users has been pivotal. This includes substantial
contributions from community members such as:

- Felix Geisendörfer (Datadog)
- Alexey Alexandrov (Google)
- Dmitry Filimonov (Grafana Labs)
- Ryan Perry (Grafana Labs)
- Jonathan Halliday (Red Hat)

The SIG's collective endeavor has been focused on aligning on the most suitable
data format for profiling, evidenced by the active discussions and proposals
within the community.

Some previous milestones reached before this point have been:

- Establishing
[profiling vision alignment](https://github.com/open-telemetry/oteps/pull/212)
(August 2022)
- Proposing
[v1 profiling data model](https://github.com/open-telemetry/oteps/pull/237)
(September 2023)
- Proposing
[v2 profiling data model](https://github.com/open-telemetry/oteps/pull/239)
(November 2023)

These all have played a crucial role in shaping the direction and evolution of
OpenTelemetry's profiling capabilities. These community-led discussions and
contributions underscore the project's commitment to being inclusive and
collaboration, ensuring that a broad spectrum of insights and expertise is
leveraged to drive the development of OpenTelemetry.

## What is profiling?

Expand All @@ -37,7 +72,7 @@ specifically, the following two donations are in play:

- Elastic has
[pledged to donate](https://github.com/open-telemetry/community/issues/1918)
their proprietary eBPF-based profiling agent <sup>1</sup>
their proprietary eBPF-based profiling agent [^1]
- Splunk has begun the process of
[donating their .NET based profiler](https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/pull/3196)

Expand All @@ -57,25 +92,25 @@ telemetry to a corresponding profile. For example:
latency across your services, but when that latency is caused by pieces of the
code it will be reflected in a profile attached to a trace or span
- Logs to profiles: Logs often give the context that something is wrong, but
profiling will allow you to go from just tracking something (i.e. Out Of
Memory errors) to seeing exactly which parts of the code are using up memory
resources
profiling will allow you to go from just tracking something (Out Of Memory
errors, for example) to seeing exactly which parts of the code are using up
memory resources

These are just a few and these links work the opposite direction as well, but
more generally profiling helps deliver on the promise of observability by making
it easier for users to query and understand an entire new dimension about their
applications with minimal additional code/effort.

A community in motion
## A community in motion

This work would not be possible without the dedicated contributors who work on
OpenTelemetry each day. We’ve recently passed a new milestone, with over 1000
unique developers contributing to the project each month, representing over 180
companies. Across our most popular repositories, OpenTelemetry sees over 30
million downloads a month<sup>2</sup>, and new open source projects are adopting
our standards at a regular pace, including
million downloads a month[^2], and new open source projects are adopting our
standards at a regular pace, including
[Apache Kafka](https://cwiki.apache.org/confluence/display/KAFKA/KIP-714%3A+Client+metrics+and+observability),
and [dozens more](/ecosystem/integrations/). We’re also deepening our
and [dozens more](/ecosystem/integrations). We’re also deepening our
integrations with other open source projects in CNCF and out, such as
[OpenFeature](https://openfeature.dev) and
[OpenSearch](https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/23611),
Expand All @@ -87,6 +122,5 @@ implement and stabilize our existing tracing, metrics, and log signals while
adding support for profiling, client-side RUM, and more. It’s a great time to
get involved – check out our [website](https://opentelemetry.io) to learn more!

<sup>1</sup> Pending due diligence and review by the OpenTelemetry maintainers.
<sup>2</sup> According to public download statistics of our .NET, Java, and
Python APIs
[^1]: Pending due diligence and review by the OpenTelemetry maintainers.
[^2]: According to public download statistics of our .NET, Java, and Python APIs
2 changes: 1 addition & 1 deletion content/en/docs/collector/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: Collector
description: Vendor-agnostic way to receive, process and export telemetry data.
aliases: [collector/about]
cascade:
vers: 0.96.0
vers: 0.97.0
weight: 10
---

Expand Down
3 changes: 2 additions & 1 deletion content/en/docs/collector/building/connector.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,8 @@ pipeline and send it to the metrics pipeline. Historically, some processors
transmitted data by making use of a work-around that follows a bad practice
where a processor directly exports data after processing. The connector
component solves the need for this work-around and the processors that used the
work around have been deprecated.
work around have been deprecated. On the same line, above mentioned processors
are also now deprecated in recent releases and are replaced by the connectors.

Additional details about the connector's full capabilities can be found at the
following links:
Expand Down
30 changes: 16 additions & 14 deletions content/en/docs/collector/building/receiver.md
Original file line number Diff line number Diff line change
Expand Up @@ -397,8 +397,11 @@ value for it so it can be used as part of the default settings.
Go ahead and add the following code to your `factory.go` file:

```go
var (
typeStr = component.MustNewType("tailtracer")
)

const (
typeStr = "tailtracer"
defaultInterval = 1 * time.Minute
)
```
Expand Down Expand Up @@ -433,8 +436,11 @@ import (
"go.opentelemetry.io/collector/receiver"
)

var (
typeStr = component.MustNewType("tailtracer")
)

const (
typeStr = "tailtracer"
defaultInterval = 1 * time.Minute
)

Expand Down Expand Up @@ -544,8 +550,11 @@ import (
"go.opentelemetry.io/collector/receiver"
)

var (
typeStr = component.MustNewType("tailtracer")
)

const (
typeStr = "tailtracer"
defaultInterval = 1 * time.Minute
)

Expand Down Expand Up @@ -860,11 +869,6 @@ pipeline and the factory is responsible to make sure the next consumer (either a
processor or exporter) in the pipeline is valid otherwise it should generate an
error.

The Collector's API provides some standard error types to help the factory
handle pipeline configurations. Your receiver factory should throw a
`component.ErrNilNextConsumer` in case the next consumer has an issue and is
passed as nil.

The `createTracesReceiver()` function will need a guard clause to make that
validation.

Expand All @@ -888,8 +892,11 @@ import (
"go.opentelemetry.io/collector/receiver"
)

var (
typeStr = component.MustNewType("tailtracer")
)

const (
typeStr = "tailtracer"
defaultInterval = 1 * time.Minute
)

Expand All @@ -900,9 +907,6 @@ func createDefaultConfig() component.Config {
}

func createTracesReceiver(_ context.Context, params receiver.CreateSettings, baseCfg component.Config, consumer consumer.Traces) (receiver.Traces, error) {
if consumer == nil {
return nil, component.ErrNilNextConsumer
}

logger := params.Logger
tailtracerCfg := baseCfg.(*Config)
Expand All @@ -927,8 +931,6 @@ func NewFactory() receiver.Factory {

{{% alert title="Check your work" color="primary" %}}

- Added a guard clause that verifies if the consumer is properly instantiated
and if not returns the `component.ErrNilNextConsumer`error.
- Added a variable called `logger` and initialized it with the Collector's
logger that is available as a field named `Logger` within the
`receiver.CreateSettings` reference.
Expand Down
Loading

0 comments on commit 5e624fb

Please sign in to comment.