diff --git a/.gitmodules b/.gitmodules
index 564020686040..12366aa77f7b 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,7 +1,8 @@
+# cSpell:ignore docsy javaexamples
[submodule "themes/docsy"]
path = themes/docsy
url = https://github.com/google/docsy.git
- docsy-pin = v0.11.0-2-g68aa7b3
+ docsy-pin = v0.11.0-22-g2f361b2b
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"]
diff --git a/.htmltest.yml b/.htmltest.yml
index f5e73895ca1a..7fb6e34637ea 100644
--- a/.htmltest.yml
+++ b/.htmltest.yml
@@ -10,6 +10,8 @@ IgnoreDirs:
# DO NOT EDIT! IgnoreDirs list is auto-generated from markdown file front matter.
# Ignore blog index pages for all locales and in all blog sections (top-level and years)
- ^(../)?blog/(\d+/)?page/\d+
+ # Ignore old blog posts
+ - ^(../)?blog/20(19|21|22|23)/
# TODO drop next lines after https://github.com/open-telemetry/opentelemetry.io/issues/5555 is fixed for these pages:
- ^zh/docs/concepts/signals/baggage/
- ^zh/docs/zero-code/php/
diff --git a/content/en/blog/2024/fuzzing-audit-results.md b/content/en/blog/2024/fuzzing-audit-results.md
index 9bed5fc2464f..f8acf94c04fd 100644
--- a/content/en/blog/2024/fuzzing-audit-results.md
+++ b/content/en/blog/2024/fuzzing-audit-results.md
@@ -9,11 +9,14 @@ cSpell:ignore: containerd Korczynski
---
OpenTelemetry is happy to announce the completion of the Collector's fuzzing
-audit sponsored by [the CNCF](https://www.cncf.io/) and carried out by
+audit [sponsored by the CNCF] and carried out by
[Ada Logics](https://adalogics.com/). The audit marks a significant step in the
OpenTelemetry project, ensuring the security and reliability of the Collector
for its users.
+[sponsored by the CNCF]:
+ https://contribute.cncf.io/resources/project-services/audits/
+
## What is fuzzing?
Fuzzing is a testing technique that executes an API with a high amount of
diff --git a/content/en/blog/2024/year-in-review.md b/content/en/blog/2024/year-in-review.md
index 9549f64bed3a..9a0693bab409 100644
--- a/content/en/blog/2024/year-in-review.md
+++ b/content/en/blog/2024/year-in-review.md
@@ -217,8 +217,13 @@ You can also join us:
Together, we can make 2025 another amazing year for [opentelemetry.io](/)!
+_[Cross-posted] to the [CNCF blog]._
+
+[CNCF blog]: https://www.cncf.io/blog/
[Comms meetings]:
https://docs.google.com/document/d/1wW0jLldwXN8Nptq2xmgETGbGn9eWP8fitvD5njM-xZY
+[Cross-posted]:
+ https://www.cncf.io/blog/2024/12/20/opentelemetry-io-2024-review/
[discussions]: https://github.com/open-telemetry/opentelemetry.io/discussions
[get involved]: /docs/contributing/
[issues]: https://github.com/open-telemetry/opentelemetry.io/issues
diff --git a/content/en/blog/2025/_index.md b/content/en/blog/2025/_index.md
new file mode 100644
index 000000000000..6a48570332c3
--- /dev/null
+++ b/content/en/blog/2025/_index.md
@@ -0,0 +1,5 @@
+---
+title: 2025
+weight: -2025
+outputs: [HTML, RSS]
+---
diff --git a/content/en/blog/_index.md b/content/en/blog/_index.md
index 4b8d78607c2c..59ef757d54a2 100644
--- a/content/en/blog/_index.md
+++ b/content/en/blog/_index.md
@@ -8,8 +8,10 @@ redirects:
- { from: 'index.xml', to: '2024/index.xml 302!' }
outputs: [HTML, RSS]
htmltest:
- # 2024-11-07 DO NOT COPY the following IgnoreDirs to non-en pages because handles all locales.
+ # 2024-11-07 DO NOT COPY the following IgnoreDirs to non-en pages because it handles all locales.
IgnoreDirs:
# Ignore blog index pages for all locales and in all blog sections (top-level and years)
- ^(../)?blog/(\d+/)?page/\d+
+ # Ignore old blog posts
+ - ^(../)?blog/20(19|21|22|23)/
---
diff --git a/content/en/docs/concepts/signals/traces.md b/content/en/docs/concepts/signals/traces.md
index d4a7942fadf0..0b6b330ee1ac 100644
--- a/content/en/docs/concepts/signals/traces.md
+++ b/content/en/docs/concepts/signals/traces.md
@@ -312,6 +312,9 @@ trace. Now, they are causally associated with one another.
Links are optional but serve as a good way to associate trace spans with one
another.
+For more information regarding Span Links, see
+[Link](/docs/specs/otel/trace/api/#link).
+
### Span Status
Each span has a status. The three possible values are:
diff --git a/content/ja/docs/demo/_index.md b/content/ja/docs/demo/_index.md
new file mode 100644
index 000000000000..cb90f09bcfdf
--- /dev/null
+++ b/content/ja/docs/demo/_index.md
@@ -0,0 +1,80 @@
+---
+title: OpenTelemetryデモ ドキュメンテーション
+linkTitle: デモ
+cascade:
+ repo: https://github.com/open-telemetry/opentelemetry-demo
+weight: 180
+cSpell:ignore: OLJCESPC
+default_lang_commit: 1e69c8f94a605ce5624c6b6657080d98f633ac7b
+---
+
+[OpenTelemetryデモ](/ecosystem/demo/)のドキュメンテーションへようこそ。
+ここでは、デモのインストール方法や実行方法、そしてOpenTelemetryの動作を確認できるいくつかのシナリオについて説明しています。
+
+## デモの実行 {#running-the-demo}
+
+デモをデプロイして動作を確認したい場合は、ここから始めてください。
+
+- [Docker](docker-deployment/)
+- [Kubernetes](kubernetes-deployment/)
+
+## 言語機能リファレンス {#language-feature-reference}
+
+特定の言語の計装がどのように機能するかを理解したい場合は、ここから始めてください。
+
+| 言語 | 自動計装 | 計装ライブラリ | 手動計装 |
+| ---------- | ------------------------------------------------------ | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- |
+| .NET | [会計サービス](services/accounting/) | [カートサービス](services/cart/) | [カートサービス](services/cart/) |
+| C++ | | | [通貨サービス](services/currency/) |
+| Go | | [決済サービス](services/checkout/), [商品カタログサービス](services/product-catalog/) | [決済サービス](services/checkout/), [商品カタログサービス](services/product-catalog/) |
+| Java | [広告サービス](services/ad/) | | [広告サービス](services/ad/) |
+| JavaScript | | [フロントエンド](services/frontend/) | [フロントエンド](services/frontend/), [支払いサービス](services/payment/) |
+| Kotlin | | [不正検知サービス](services/fraud-detection/) | |
+| PHP | | [見積サービス](services/quote/) | [見積サービス](services/quote/) |
+| Python | [レコメンデーションサービス](services/recommendation/) | | [レコメンデーションサービス](services/recommendation/) |
+| Ruby | | [メールサービス](services/email/) | [メールサービス](services/email/) |
+| Rust | | [配送サービス](services/shipping/) | [配送サービス](services/shipping/) |
+
+## サービスドキュメント {#service-documentation}
+
+各サービスのOpenTelemetryのデプロイの仕方に関する具体的な情報は、こちらで確認できます
+
+- [会計サービス](services/accounting/)
+- [広告サービス](services/ad/)
+- [カートサービス](services/cart/)
+- [決済サービス](services/checkout/)
+- [メールサービス](services/email/)
+- [フロントエンド](services/frontend/)
+- [負荷生成ツール](services/load-generator/)
+- [支払いサービス](services/payment/)
+- [商品カタログサービス](services/product-catalog/)
+- [見積サービス](services/quote/)
+- [レコメンデーションサービス](services/recommendation/)
+- [配送サービス](services/shipping/)
+- [画像プロバイダーサービス](services/imageprovider/)
+
+## シナリオ {#scenarios}
+
+OpenTelemetryを使用してどのように問題を解決できるでしょうか?
+これらのシナリオでは、事前に設定された問題を紹介し、それらを解決するためにOpenTelemetryのデータをどのように解釈するかを説明します。
+
+今後、さらに多くのシナリオを追加していく予定です。
+
+- フィーチャーフラグサービスを使用して、商品ID:`OLJCESPC7Z`の`GetProduct`リクエストに対する[商品カタログエラー](feature-flags)を生成
+- メモリリークを発見し、メトリクスとトレースを使用して診断。
+ [詳細](scenarios/recommendation-cache/)
+
+## リファレンス {#reference}
+
+要件や機能マトリクスなどのプロジェクトリファレンスドキュメント。
+
+- [アーキテクチャ](architecture/)
+- [開発](development/)
+- [フィーチャーフラグリファレンス](feature-flags/)
+- [メトリック機能マトリクス](telemetry-features/metric-coverage/)
+- [要件](./requirements/)
+- [スクリーンショット](screenshots/)
+- [サービス](services/)
+- [スパン属性リファレンス](telemetry-features/manual-span-attributes/)
+- [テスト](tests/)
+- [トレース機能マトリクス](telemetry-features/trace-coverage/)
diff --git a/content/ja/docs/demo/architecture.md b/content/ja/docs/demo/architecture.md
new file mode 100644
index 000000000000..c848658474fc
--- /dev/null
+++ b/content/ja/docs/demo/architecture.md
@@ -0,0 +1,198 @@
+---
+title: デモのアーキテクチャ
+linkTitle: アーキテクチャ
+aliases: [current_architecture]
+body_class: otel-mermaid-max-width
+default_lang_commit: 1e69c8f94a605ce5624c6b6657080d98f633ac7b
+---
+
+**OpenTelemetryデモ** は、異なるプログラミング言語で書かれた複数のマイクロサービスから構成されており、gRPCとHTTPを使って相互に通信を行います。
+さらに、負荷生成ツールが含まれており、[Locust](https://locust.io/)というツールを使用して、ユーザートラフィックを模擬的に生成します。
+
+```mermaid
+graph TD
+subgraph サービス図
+accountingservice(会計サービス):::dotnet
+adservice(広告サービス):::java
+cache[(キャッシュ
(Valkey))]
+cartservice(カートサービス):::dotnet
+checkoutservice(決済サービス):::golang
+currencyservice(通貨サービス):::cpp
+emailservice(メールサービス):::ruby
+flagd(Flagd):::golang
+flagdui(Flagd-ui):::typescript
+frauddetectionservice(不正検知サービス):::kotlin
+frontend(フロントエンド):::typescript
+frontendproxy(フロントエンドプロキシ
(Envoy)):::cpp
+imageprovider(画像プロバイダー
(nginx)):::cpp
+loadgenerator([負荷生成ツール]):::python
+paymentservice(支払いサービス):::javascript
+productcatalogservice(商品カタログサービス):::golang
+quoteservice(見積サービス):::php
+recommendationservice(レコメンデーションサービス):::python
+shippingservice(配送サービス):::rust
+queue[(キュー
(Kafka))]:::java
+
+adservice ---->|gRPC| flagd
+
+checkoutservice -->|gRPC| cartservice
+checkoutservice --->|TCP| queue
+cartservice --> cache
+cartservice -->|gRPC| flagd
+
+checkoutservice -->|gRPC| shippingservice
+checkoutservice -->|gRPC| paymentservice
+checkoutservice --->|HTTP| emailservice
+checkoutservice -->|gRPC| currencyservice
+checkoutservice -->|gRPC| productcatalogservice
+
+frauddetectionservice -->|gRPC| flagd
+
+frontend -->|gRPC| adservice
+frontend -->|gRPC| cartservice
+frontend -->|gRPC| checkoutservice
+frontend ---->|gRPC| currencyservice
+frontend ---->|gRPC| recommendationservice
+frontend -->|gRPC| productcatalogservice
+
+frontendproxy -->|gRPC| flagd
+frontendproxy -->|HTTP| frontend
+frontendproxy -->|HTTP| flagdui
+frontendproxy -->|HTTP| imageprovider
+
+Internet -->|HTTP| frontendproxy
+
+loadgenerator -->|HTTP| frontendproxy
+
+paymentservice -->|gRPC| flagd
+
+queue -->|TCP| accountingservice
+queue -->|TCP| frauddetectionservice
+
+recommendationservice -->|gRPC| productcatalogservice
+recommendationservice -->|gRPC| flagd
+
+shippingservice -->|HTTP| quoteservice
+end
+
+classDef dotnet fill:#178600,color:white;
+classDef cpp fill:#f34b7d,color:white;
+classDef golang fill:#00add8,color:black;
+classDef java fill:#b07219,color:white;
+classDef javascript fill:#f1e05a,color:black;
+classDef kotlin fill:#560ba1,color:white;
+classDef php fill:#4f5d95,color:white;
+classDef python fill:#3572A5,color:white;
+classDef ruby fill:#701516,color:white;
+classDef rust fill:#dea584,color:black;
+classDef typescript fill:#e98516,color:black;
+```
+
+```mermaid
+graph TD
+subgraph サービスの凡例
+ dotnetsvc(.NET):::dotnet
+ cppsvc(C++):::cpp
+ golangsvc(Go):::golang
+ javasvc(Java):::java
+ javascriptsvc(JavaScript):::javascript
+ kotlinsvc(Kotlin):::kotlin
+ phpsvc(PHP):::php
+ pythonsvc(Python):::python
+ rubysvc(Ruby):::ruby
+ rustsvc(Rust):::rust
+ typescriptsvc(TypeScript):::typescript
+end
+
+classDef dotnet fill:#178600,color:white;
+classDef cpp fill:#f34b7d,color:white;
+classDef golang fill:#00add8,color:black;
+classDef java fill:#b07219,color:white;
+classDef javascript fill:#f1e05a,color:black;
+classDef kotlin fill:#560ba1,color:white;
+classDef php fill:#4f5d95,color:white;
+classDef python fill:#3572A5,color:white;
+classDef ruby fill:#701516,color:white;
+classDef rust fill:#dea584,color:black;
+classDef typescript fill:#e98516,color:black;
+```
+
+デモアプリケーションの[メトリック](/docs/demo/telemetry-features/metric-coverage/) と [トレース](/docs/demo/telemetry-features/trace-coverage/) の計装の現状については、リンクをご確認ください。
+
+コレクターの設定は [otelcol-config.yml](https://github.com/open-telemetry/opentelemetry-demo/blob/main/src/otelcollector/otelcol-config.yml) で行われており、代替のエクスポーターをここで設定することができます。
+
+```mermaid
+graph TB
+subgraph tdf[テレメトリーデータフロー]
+ subgraph subgraph_padding [ ]
+ style subgraph_padding fill:none,stroke:none;
+ %% タイトルの重複を防ぐためのパディング
+ subgraph od[OpenTelemetryデモ]
+ ms(マイクロサービス)
+ end
+
+ ms -.->|"OTLP
gRPC"| oc-grpc
+ ms -.->|"OTLP
HTTP POST"| oc-http
+
+ subgraph oc[OTelコレクター]
+ style oc fill:#97aef3,color:black;
+ oc-grpc[/"OTLPレシーバー
リッスン先:
grpc://localhost:4317"/]
+ oc-http[/"OTLPレシーバー
リッスン先:
localhost:4318
"/]
+ oc-proc(プロセッサー)
+ oc-prom[/"OTLP HTTPエクスポーター"/]
+ oc-otlp[/"OTLPエクスポーター"/]
+
+ oc-grpc --> oc-proc
+ oc-http --> oc-proc
+
+ oc-proc --> oc-prom
+ oc-proc --> oc-otlp
+ end
+
+ oc-prom -->|"localhost:9090/api/v1/otlp"| pr-sc
+ oc-otlp -->|gRPC| ja-col
+
+ subgraph pr[Prometheus]
+ style pr fill:#e75128,color:black;
+ pr-sc[/"Prometheus OTLP書き込みレシーバー"/]
+ pr-tsdb[(Prometheus TSDB)]
+ pr-http[/"Prometheus HTTP
リッスン先:
localhost:9090"/]
+
+ pr-sc --> pr-tsdb
+ pr-tsdb --> pr-http
+ end
+
+ pr-b{{"ブラウザ
Prometheus UI"}}
+ pr-http ---->|"localhost:9090/graph"| pr-b
+
+ subgraph ja[Jaeger]
+ style ja fill:#60d0e4,color:black;
+ ja-col[/"Jaegerコレクター
リッスン先:
grpc://jaeger:4317"/]
+ ja-db[(Jaeger DB)]
+ ja-http[/"Jaeger HTTP
リッスン先:
localhost:16686"/]
+
+ ja-col --> ja-db
+ ja-db --> ja-http
+ end
+
+ subgraph gr[Grafana]
+ style gr fill:#f8b91e,color:black;
+ gr-srv["Grafanaサーバー"]
+ gr-http[/"Grafana HTTP
リッスン先:
localhost:3000"/]
+
+ gr-srv --> gr-http
+ end
+
+ pr-http --> |"localhost:9090/api"| gr-srv
+ ja-http --> |"localhost:16686/api"| gr-srv
+
+ ja-b{{"ブラウザ
Jaeger UI"}}
+ ja-http ---->|"localhost:16686/search"| ja-b
+
+ gr-b{{"ブラウザ
Grafana UI"}}
+ gr-http -->|"localhost:3000/dashboard"| gr-b
+ end
+end
+```
+
+Protocol Bufferの定義は /pb/ ディレクトリにあります。
diff --git a/data/registry/instrumentation-java-http4k.yml b/data/registry/instrumentation-java-http4k.yml
index 611947141457..3d7e1613e270 100644
--- a/data/registry/instrumentation-java-http4k.yml
+++ b/data/registry/instrumentation-java-http4k.yml
@@ -19,4 +19,4 @@ isFirstParty: true
package:
registry: maven
name: org.http4k/http4k-opentelemetry
- version: 5.43.0.0
+ version: 5.44.1.0
diff --git a/package.json b/package.json
index dae8e76150d8..5d8971b3ddbf 100644
--- a/package.json
+++ b/package.json
@@ -116,16 +116,16 @@
"ajv-errors": "^3.0.0",
"ajv-formats": "^3.0.1",
"autoprefixer": "^10.4.20",
- "cspell": "^8.16.1",
+ "cspell": "^8.17.1",
"gulp": "^5.0.0",
- "hugo-extended": "0.139.4",
+ "hugo-extended": "0.140.2",
"js-yaml": "^4.1.0",
"markdown-link-check": "^3.13.6",
"markdownlint": "^0.36.1",
"postcss-cli": "^11.0.0",
"prettier": "3.4.2",
"require-dir": "^1.2.0",
- "textlint": "^14.4.0",
+ "textlint": "^14.4.2",
"textlint-filter-rule-allowlist": "^4.0.0",
"textlint-filter-rule-comments": "^1.2.2",
"textlint-rule-terminology": "^5.2.12",
@@ -135,19 +135,19 @@
"dependencies": {
"@opentelemetry/api": "^1.9.0",
"@opentelemetry/auto-instrumentations-web": "^0.45.0",
- "@opentelemetry/context-zone": "^1.29.0",
- "@opentelemetry/core": "^1.29.0",
+ "@opentelemetry/context-zone": "^1.30.0",
+ "@opentelemetry/core": "^1.30.0",
"@opentelemetry/exporter-trace-otlp-http": "^0.57.0",
"@opentelemetry/instrumentation": "^0.57.0",
- "@opentelemetry/resources": "^1.29.0",
- "@opentelemetry/sdk-trace-base": "^1.29.0",
- "@opentelemetry/sdk-trace-web": "^1.29.0",
+ "@opentelemetry/resources": "^1.30.0",
+ "@opentelemetry/sdk-trace-base": "^1.30.0",
+ "@opentelemetry/sdk-trace-web": "^1.30.0",
"@opentelemetry/semantic-conventions": "^1.28.0",
"path": "^0.12.7"
},
"optionalDependencies": {
- "netlify-cli": "^17.38.0",
- "npm-check-updates": "^17.1.11"
+ "netlify-cli": "^17.38.1",
+ "npm-check-updates": "^17.1.13"
},
"enginesComment": "Ensure that engines.node value stays consistent with the project's .nvmrc",
"engines": {
diff --git a/static/refcache.json b/static/refcache.json
index f6894115690f..5d211d686473 100644
--- a/static/refcache.json
+++ b/static/refcache.json
@@ -2059,6 +2059,10 @@
"StatusCode": 206,
"LastSeen": "2024-01-30T06:05:22.938822-05:00"
},
+ "https://contribute.cncf.io/resources/project-services/audits/": {
+ "StatusCode": 206,
+ "LastSeen": "2025-01-04T17:06:30.360149-05:00"
+ },
"https://coralogix.com/docs/opentelemetry/": {
"StatusCode": 206,
"LastSeen": "2024-08-09T10:46:28.010241-04:00"
@@ -13327,6 +13331,10 @@
"StatusCode": 206,
"LastSeen": "2024-06-04T17:29:48.60678168+02:00"
},
+ "https://www.cncf.io/blog/": {
+ "StatusCode": 200,
+ "LastSeen": "2025-01-04T17:12:06.182152-05:00"
+ },
"https://www.cncf.io/blog/2019/05/21/a-brief-history-of-opentelemetry-so-far/": {
"StatusCode": 206,
"LastSeen": "2024-01-18T20:05:14.383107-05:00"
@@ -13343,6 +13351,10 @@
"StatusCode": 206,
"LastSeen": "2024-03-19T10:16:35.961700341Z"
},
+ "https://www.cncf.io/blog/2024/12/20/opentelemetry-io-2024-review/": {
+ "StatusCode": 200,
+ "LastSeen": "2025-01-04T17:12:03.120768-05:00"
+ },
"https://www.cncf.io/projects/": {
"StatusCode": 206,
"LastSeen": "2024-01-18T19:07:28.590053-05:00"
diff --git a/themes/docsy b/themes/docsy
index 68aa7b39fc81..2f361b2b6cc1 160000
--- a/themes/docsy
+++ b/themes/docsy
@@ -1 +1 @@
-Subproject commit 68aa7b39fc81e2239f3984cacf4c7dc09e7d6b0f
+Subproject commit 2f361b2b6cc1b7049b2bd885985e840a56d6e72a