Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Log SSL Connection Information #2250

Open
samin36 opened this issue Jul 28, 2023 · 6 comments
Open

Log SSL Connection Information #2250

samin36 opened this issue Jul 28, 2023 · 6 comments
Labels
good first issue Good for newcomers help wanted Good for taking. Extra help will be provided by maintainers triage/accepted Indicates an issue or PR is ready to be actively worked on.

Comments

@samin36
Copy link
Contributor

samin36 commented Jul 28, 2023

Before opening a feature request against this repo, consider whether the feature should/could be implemented in the other OpenTelemetry client libraries. If so, please open an issue on opentelemetry-specification first.

Request
I have successfully set up the HTTP metric/trace exporter to use SSL/TLS, but I am not seeing any connection specific information logged anywhere. With debug log level, I see the [OTLP HTTP Client] Session state: connected message, but that does not contain sufficient information.

Describe the solution you'd like
Upon establishing an HTTPS connection, the negotiated TLS version and the Cipher suite should be logged. Logging the entire handshake would also be nice to have for debugging purposes.

@github-actions github-actions bot added the needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. label Jul 28, 2023
@lalitb
Copy link
Member

lalitb commented Jul 31, 2023

libcurl verbose mode is switched off by default:

rc = SetCurlLongOption(CURLOPT_VERBOSE, 0L);

We can make it configurable. Though need to validate if this will also dump SSL handshake data.
Contributions are welcome in general to add this support.

@esigo esigo added the help wanted Good for taking. Extra help will be provided by maintainers label Jul 31, 2023
@github-actions
Copy link

This issue is available for anyone to work on. Make sure to reference this issue in your pull request.
✨ Thank you for your contribution! ✨

@esigo esigo added triage/accepted Indicates an issue or PR is ready to be actively worked on. good first issue Good for newcomers and removed needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. labels Jul 31, 2023
@samin36
Copy link
Contributor Author

samin36 commented Jul 31, 2023

libcurl verbose mode is switched off by default:

rc = SetCurlLongOption(CURLOPT_VERBOSE, 0L);

We can make it configurable. Though need to validate if this will also dump SSL handshake data. Contributions are welcome in general to add this support.

Agree with making it configurable. We should be able to use the CURLOPT_DEBUGFUNCTION option to specify a callback that logs all the necessary information.

@samin36
Copy link
Contributor Author

samin36 commented Jul 31, 2023

I can take a shot at implementing this. Sign me up!

@lalitb
Copy link
Member

lalitb commented Jul 31, 2023

Thanks @samin36, it's your's now.

@github-actions
Copy link

This issue was marked as stale due to lack of activity.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers help wanted Good for taking. Extra help will be provided by maintainers triage/accepted Indicates an issue or PR is ready to be actively worked on.
Projects
None yet
Development

No branches or pull requests

3 participants