Add OTEL tracing export
Nobody has claimed this yet.
- Dominant language
- PHP
- Stars
- 36.9k
- Forks
- 5.2k
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 713
Description
Hello,
I was curious how interested you are in adding tracing with the OTEL libraries. I know we already have tracing thanks to PHP’s xdebug and I have already used it and it does the job. But the experience could be so much better.
At work we use the Golang OTEL library and, although I wasn’t convinced in the beginning, I must admit having traces flowing automatically from our apps to our Grafana instance (using Tempo) and having logs, metrics and traces all linked together is really, really great.
I checked the PHP OTEL library and they are even more mature than the Go ones. Also, it looks like we can have automatic instrumentation like xdebug does.
I did not try implementing anything yet and instead of dumping a PR out of the blue, I wanted to know if you were interested in having a PR adding tracing using the PHP OTEL library. If so, I’ve got no timeline guarantees but I’ll start work on this.
Btw, this all came from me wanting to squeeze out more performance from the WebDAV Nextcloud implementation.
EDIT: looking at some of the bugs and issues raised here and in the forum, I’m convinced a lot of these could be diagnosed thanks to traces.
EDIT2: also I’m maybe not seeing the full picture here. How do ppl usually track down performance issues in Nextcloud? So there’s xdebug, some amount of monitoring metrics, some logs, then more monitoring on external things used by Nextcloud like disk I/O, CPU and memory usage, etc. Apart from xdebug, I don’t see these as telling you exactly where the issue lies but instead as helpers to pinpoint where to look. Am I missing something?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the PHP OTEL library documentation, especially automatic instrumentation, and compare it with the existing xdebug-based tracing described in the issue. Define the supported export path and integration scope before implementation; done should include traces flowing from Nextcloud and a way to verify them alongside logs and metrics.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- php
- Domain
- observability
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 28/100