open-telemetry / open-telemetry/opentelemetry-java-instrumentation
Expose spans or span attributes for Quartz internal states
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 2.6k
- Forks
- 1.2k
- Avg merge
- 2d 18h
- Merged PRs (30d)
- 228
Description
Is your feature request related to a problem? Please describe.
- Visibility into what's going on inside Quartz, like job status changes or scheduling decisions, appears poor
- Quartz instrumentation creates a lot of noise from DB spans in the root, i.e. un-grouped
Describe the solution you'd like
When looking at Quartz' listener interfaces, there are a few places to extract additional spans or span attributes from:
org.quartz.JobListenerhooks receiveorg.quartz.JobExecutionContextororg.quartz.JobExecutionException, from which span attributes could be extracted.org.quartz.SchedulerListenerhooks could be used to create additional spans (that would also group the miriad of DB spans caused by Quartz), or span attributes could be extracted fromorg.quartz.SchedulerException.
Describe alternatives you've considered
No response
Additional context
This issue focusses on installing instrumentation into additional Quartz listener hooks to provide information on Quartz internals. I also created https://github.com/open-telemetry/opentelemetry-java-instrumentation/issues/14624 about adding more span attributes to the already existing job execution span.
Tip
React with 👍 to help prioritize this issue. Please use comments to provide useful context, avoiding +1 or me too, to help us triage it. Learn more here.
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 locating the Quartz instrumentation and its existing job execution span, then trace the JobListener and SchedulerListener hooks named in the issue. Compare the requested internal-state visibility with issue 14624 and determine which hooks should add spans versus attributes. Done means additional Quartz listener instrumentation provides useful job or scheduling context while grouping the related database spans.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- observability
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100