Skip to content

Commit a425c4c

Browse files
intuibaseotelbot[bot]tiffany76theletterf
authored
blog: add post on Elastic PHP distro donation (#9434) (#9617)
Co-authored-by: otelbot <197425009+otelbot@users.noreply.github.com> Co-authored-by: Tiffany Hrabusa <30397949+tiffany76@users.noreply.github.com> Co-authored-by: Fabrizio Ferri-Benedetti <algernon@fastmail.com>
1 parent 9b21c43 commit a425c4c

File tree

2 files changed

+106
-0
lines changed

2 files changed

+106
-0
lines changed
Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
---
2+
title: OpenTelemetry Accepted Elastic's PHP Distro Donation
3+
linkTitle: Elastic PHP Distro Donation
4+
date: 2026-04-16
5+
author: >-
6+
[Pawel Filipczak](https://github.com/intuibase) (Elastic)
7+
draft: true
8+
issue: https://github.com/open-telemetry/opentelemetry.io/issues/9434
9+
sig: OpenTelemetry PHP
10+
cSpell:ignore: Filipczak Pawel
11+
---
12+
13+
The OpenTelemetry community accepted the donation of the OpenTelemetry PHP
14+
Distro project. This post summarizes what the donation enables, how it relates
15+
to existing PHP instrumentation paths, and where contributors can help next.
16+
17+
## Why this donation matters
18+
19+
OpenTelemetry provides a common observability standard, but OpenTelemetry PHP
20+
adoption can still be difficult in environments where installing or compiling
21+
native extensions is restricted. Common blockers include:
22+
23+
- Restricted or hardened systems where native extensions cannot be built during
24+
deployment.
25+
- Runtime images that are not rebuilt frequently.
26+
- Operational workflows that rely on OS package managers.
27+
28+
The PHP Distro addresses these constraints by focusing on an operations-first
29+
installation model.
30+
31+
## What the PHP Distro provides
32+
33+
The project combines native and PHP runtime components into a single deployment
34+
model for production environments. Current capabilities include:
35+
36+
- Prebuilt native extension and loader artifacts.
37+
- Runtime/bootstrap logic for auto-instrumentation.
38+
- Packaging support for `deb`, `rpm`, and `apk`.
39+
- OTLP protobuf serialization without requiring `ext-protobuf`.
40+
- Inferred spans and URL grouping features for better visibility.
41+
- OpAMP integration support.
42+
43+
For teams running PHP `8.1` through `8.4`, this can reduce adoption overhead
44+
compared with custom build pipelines.
45+
46+
## Relationship to existing PHP instrumentation
47+
48+
The distro builds on the same OpenTelemetry PHP APIs and SDK, so it does not
49+
fork or replace core components. Teams can choose either installation path on a
50+
per-service basis:
51+
52+
- Distro path: package-managed, operations-first rollout with minimal code
53+
changes.
54+
- Composer-based path: manual control and portability where application-level
55+
packaging is preferred.
56+
57+
Choosing between them depends on your deployment model, security constraints,
58+
and ownership of runtime packaging.
59+
60+
## Practical rollout checklist
61+
62+
Before broad production rollout, validate the following:
63+
64+
- Runtime compatibility across PHP versions and SAPIs (`php-fpm`, `mod_php`,
65+
CLI).
66+
- Package format and architecture support in your Linux distributions.
67+
- Telemetry quality (span completeness, naming, exporter behavior).
68+
- Operational safety (restart and rollback procedures, version pinning).
69+
70+
A lightweight validation matrix across representative services can help avoid
71+
rework later.
72+
73+
## Current status and next topics
74+
75+
The project has reached a major milestone and is moving toward a first beta
76+
release. Active follow-up topics include:
77+
78+
- Class and namespace shadowing to reduce dependency collisions.
79+
- Declarative configuration support.
80+
- PHP `8.5` compatibility.
81+
- Central configuration capabilities aligned with OpenTelemetry policy work.
82+
- Ongoing alignment between upstream OpenTelemetry distro work and vendor
83+
distributions built on top of it.
84+
85+
## How to contribute
86+
87+
If you want to help:
88+
89+
- Test the distro in real environments and share compatibility findings.
90+
- Report installation and runtime issues in
91+
[`opentelemetry-php-distro` repository](https://github.com/open-telemetry/opentelemetry-php-distro).
92+
- Propose documentation improvements for deployment, migration, and
93+
troubleshooting.
94+
- Join OpenTelemetry PHP and relevant SIG discussions to align roadmap and user
95+
guidance.
96+
97+
You can also review the donation context and discussion in
98+
[open-telemetry/community issue #2846](https://github.com/open-telemetry/community/issues/2846).

static/refcache.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7383,6 +7383,10 @@
73837383
"StatusCode": 206,
73847384
"LastSeen": "2026-03-24T09:54:05.407124668Z"
73857385
},
7386+
"https://github.com/open-telemetry/community/issues/2846": {
7387+
"StatusCode": 206,
7388+
"LastSeen": "2026-04-09T08:36:44.720113556Z"
7389+
},
73867390
"https://github.com/open-telemetry/community/issues/2975": {
73877391
"StatusCode": 206,
73887392
"LastSeen": "2026-03-25T09:53:34.367844637Z"
@@ -14455,6 +14459,10 @@
1445514459
"StatusCode": 206,
1445614460
"LastSeen": "2026-03-23T14:22:19.441950748Z"
1445714461
},
14462+
"https://github.com/open-telemetry/opentelemetry-php-distro": {
14463+
"StatusCode": 206,
14464+
"LastSeen": "2026-04-09T08:36:39.599057204Z"
14465+
},
1445814466
"https://github.com/open-telemetry/opentelemetry-php-instrumentation": {
1445914467
"StatusCode": 206,
1446014468
"LastSeen": "2026-04-10T09:57:35.425408103Z"

0 commit comments

Comments
 (0)