open-telemetry / open-telemetry/opentelemetry-cpp-contrib

Nginx: No span created when request fails before proxy phase.

Open
#279 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Python
Stars
153
Forks
184
Avg merge
2d 9h
Merged PRs (30d)
26

Description

Steps to reproduce
When sending a request with too large header (larger than 8kb). Then nginx rejects/responds with status 400 before any spans are created.

What is the expected behavior?
This module should create a span with error status. If possible it should contains cause/exception what happened.

What is the actual behavior?
No traces and spans are generated.

Additional context
This might not be possible if rejection is done before any modules are executed. But it could be possible to catch in log phase. But it might be tricky to detect cause.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing how the Nginx module handles requests rejected before the proxy phase, with particular attention to whether the log phase is reached. Determine whether a span can be created for the 400 response and what failure cause is available; done means the behavior is documented or implemented with coverage for oversized headers.

Written by the indexing model from the issue text.

Assessment

Tech stack
nginx
Domain
observability
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.