Skip to content

docs: add troubleshooting guide for common plugin issues#1260

Open
S-anskriti wants to merge 2 commits intojenkinsci:mainfrom
S-anskriti:docs/add-troubleshooting-guide
Open

docs: add troubleshooting guide for common plugin issues#1260
S-anskriti wants to merge 2 commits intojenkinsci:mainfrom
S-anskriti:docs/add-troubleshooting-guide

Conversation

@S-anskriti
Copy link
Copy Markdown

Summary

Adds a new docs/troubleshooting.md file and links it from README.md.

Motivation

Users regularly open issues describing problems that have known
solutions — endpoint failures, auth errors, missing metrics. A
dedicated troubleshooting doc reduces repeated support requests
and helps new users self-diagnose without needing to file an issue.

Changes

Testing

Documentation only — no functional changes.


Note: I am a GSoC 2026 applicant interested in the
Use OpenTelemetry for Jenkins Jobs on ci.jenkins.io
project. This contribution is part of my pre-application community engagement.

Add docs/troubleshooting.md covering:
- OTLP endpoint connection failures and port configuration
- Authentication errors (Bearer tokens, OTLP headers)
- Known workaround for metrics stopping after config change (jenkinsci#424)
- Missing ci.pipeline.* metrics and Collector configuration (jenkinsci#930)
- How to enable FINE log level for debugging

Add Troubleshooting section to README.md linking to the new guide.
@S-anskriti S-anskriti requested a review from a team as a code owner March 19, 2026 10:51
@S-anskriti
Copy link
Copy Markdown
Author

Hi @shivaylamba and @krisstern,

I'm a GSoC 2026 applicant interested in the "Use OpenTelemetry
for Jenkins Jobs on the "ci.jenkins.io" project. This is my first
contribution to the plugin — would love any feedback on the
content or structure of the troubleshooting guide!


**Symptom:** No traces or metrics appear in your backend. The Jenkins system log shows:
**Checklist:**

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the first thing you have to do is check the logs, Jenkins, Collector, and backend

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great point! I'll add log checking as the first step in the checklist
before the other items. Thanks for the review!

**Symptom:** The Jenkins log shows `UNAUTHENTICATED` or `PERMISSION_DENIED`.

**Checklist:**

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

check the logs too

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Understood, will add log checking as step 1 here as well.

Comment on lines +53 to +63
## Metrics stop appearing after a configuration change

**Symptom:** Traces and metrics were working but stopped after updating the
plugin configuration.

**Known workaround:** Restart the Jenkins controller after changing
OpenTelemetry settings. The exporter pipeline does not always reinitialise
without a restart.

Related: [Issue #424](https://github.com/jenkinsci/opentelemetry-plugin/issues/424)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is resolved and the "issue" descrition is vage, I am not sure if it worth to mention it.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the clarification! I'll remove this section entirely.
Since the issue has been resolved. I didn't want to reference outdated
workarounds.

Comment on lines +66 to +85
## Missing ci.pipeline.* metrics

**Symptom:** `jenkins.*` metrics arrive correctly but `ci.pipeline.*` metrics
are absent in your backend.

**Checklist:**

1. Ensure your backend supports OTLP metrics. Prometheus requires the
OpenTelemetry Collector with a Prometheus exporter.
2. Enable `resource_to_telemetry_conversion` on the Collector:
```yaml
exporters:
prometheus:
endpoint: "0.0.0.0:1234"
resource_to_telemetry_conversion:
enabled: true
```
3. Verify at least one Pipeline build has completed since the plugin was installed.

Related: [Issue #930](https://github.com/jenkinsci/opentelemetry-plugin/issues/930)
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

no clear what happens and why

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You're right, the symptom description is unclear. I'll rewrite it to better explain WHY ci.pipeline.* metrics go missing and what the root cause is. Could you point me to the right context so I can write this accurately?

- Add log checking as first troubleshooting step in OTLP and auth sections
- Remove resolved issue jenkinsci#424 reference
- Clarify ci.pipeline.* symptom with root cause explanation
- Explain why resource_to_telemetry_conversion is needed
@S-anskriti
Copy link
Copy Markdown
Author

@kuisathaverat I've pushed an update addressing all your feedback:

  • Added log checking (Jenkins, Collector, and backend logs) as the
    first step in both the OTLP and authentication sections
  • Removed the Metrics export stopped after changing the configuration of the Jenkins OpenTelemetry Plugin #424 section since the issue is resolved
  • Rewrote the ci.pipeline.* symptom to explain the root cause —
    resource attributes being dropped by backends that require
    explicit resource_to_telemetry_conversion configuration
  • Added the missing error message snippet to the OTLP symptom section

Please let me know if anything else needs adjusting!

@S-anskriti
Copy link
Copy Markdown
Author

@kuisathaverat the CI failures appear to be pre-existing and
unrelated to this documentation-only change. Could you confirm
and approve the workflow run so the full CI can execute?

Comment on lines +63 to +65
5. If using the environment variable approach, verify the format:

OTEL_EXPORTER_OTLP_HEADERS=Authorization=Bearer YOUR_TOKEN
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the authorization is managed by the plugin, this environment variables are used in rare cases

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants