Skip to content

LOG-6410: Add upstream feature doc for proxy support in HTTP and Loki outputs#3236

Open
vparfonov wants to merge 1 commit intoopenshift:masterfrom
vparfonov:log6410
Open

LOG-6410: Add upstream feature doc for proxy support in HTTP and Loki outputs#3236
vparfonov wants to merge 1 commit intoopenshift:masterfrom
vparfonov:log6410

Conversation

@vparfonov
Copy link
Copy Markdown
Contributor

Description

Add upstream feature doc for proxy support in HTTP and Loki outputs.
Documents describes per-output proxyURL configuration, interaction with cluster-wide proxy env vars, supported output types, and proxy precedence behavior.

/cc
/assign

Links

  • Depending on PR(s):
  • GitHub issue:
  • JIRA:
  • Enhancement proposal:

… outputs

Documents per-output proxyURL configuration, interaction with cluster-wide
proxy env vars, supported output types, and proxy precedence behavior.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@openshift-ci-robot
Copy link
Copy Markdown

openshift-ci-robot commented Mar 25, 2026

@vparfonov: This pull request references LOG-6410 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the task to target the "4.8.0" version, but no target version was set.

Details

In response to this:

Description

Add upstream feature doc for proxy support in HTTP and Loki outputs.
Documents describes per-output proxyURL configuration, interaction with cluster-wide proxy env vars, supported output types, and proxy precedence behavior.

/cc
/assign

Links

  • Depending on PR(s):
  • GitHub issue:
  • JIRA:
  • Enhancement proposal:

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Mar 25, 2026
@openshift-ci openshift-ci bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Mar 25, 2026
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci bot commented Mar 25, 2026

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@vparfonov
Copy link
Copy Markdown
Contributor Author

/hold

@openshift-ci openshift-ci bot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Mar 25, 2026
@vparfonov vparfonov marked this pull request as ready for review March 25, 2026 18:16
@openshift-ci openshift-ci bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Mar 25, 2026
@vparfonov
Copy link
Copy Markdown
Contributor Author

/assign @jcantrill
/cc @cahartma @Clee2691

@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci bot commented Mar 25, 2026

@vparfonov: all tests passed!

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

| Uses a TCP/UDP socket sink. HTTP proxy is not applicable at the Vector sink level.
|===

For output types that do not support `proxyURL`, proxy behavior is controlled entirely by the cluster-wide proxy environment variables (`HTTP_PROXY`, `HTTPS_PROXY`, `NO_PROXY`) set on the collector container. Many of the output types listed above have proxy support in the underlying Vector sink, making them candidates for future `proxyURL` support in the CLF API.
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.

We should add a note these are not configurable by an admin and are passed through from the cluster-wide settings to the deployment by the operator


For output types that do not support `proxyURL`, proxy behavior is controlled entirely by the cluster-wide proxy environment variables (`HTTP_PROXY`, `HTTPS_PROXY`, `NO_PROXY`) set on the collector container. Many of the output types listed above have proxy support in the underlying Vector sink, making them candidates for future `proxyURL` support in the CLF API.

NOTE: The `proxyURL` field was added incrementally based on user demand: first for HTTP (LOG-6069, Sep 2024), then for Loki (LOG-8645, Jan 2026). There is no technical barrier to adding it for other HTTP-based outputs (Elasticsearch, Splunk, CloudWatch, Google Cloud Logging, Azure Monitor, S3) — the underlying Vector sinks already support proxy configuration, and the operator's internal `Proxy` struct is generic and reusable. Adding `proxyURL` to a new output type requires only adding the field to the API type, wiring it in the output's config generator, and regenerating the CRDs.
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.

I don't believe we need this detailed of a note. Maybe we can just state there is a pending feature request to add it to the other types: https://redhat.atlassian.net/browse/OBSDA-1202


. **Cluster-wide proxy** — Configured at the OpenShift cluster level. The operator passes `HTTP_PROXY`, `HTTPS_PROXY`, and `NO_PROXY` environment variables to the collector container. These are honored automatically by the collector for all outbound connections unless overridden.

. **Per-output `proxyURL`** — An explicit proxy URL set on an individual HTTP or Loki output in the ClusterLogForwarder spec. This generates a dedicated proxy configuration block for that specific output.
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.

set on an individual output...


. **Per-output `proxyURL`** — An explicit proxy URL set on an individual HTTP or Loki output in the ClusterLogForwarder spec. This generates a dedicated proxy configuration block for that specific output.

IMPORTANT: When `proxyURL` is set on an output, it **fully replaces** the cluster-wide proxy environment variables for that output. The two mechanisms do not merge. The cluster-wide `NO_PROXY` list is also ignored for that output.
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.

Do we know this for certain? Is this what the underlying rust code in vector tells us?

@jcantrill
Copy link
Copy Markdown
Contributor

/approve

@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci bot commented Mar 25, 2026

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: jcantrill, vparfonov

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Mar 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants