Skip to content

OBSDOCS-1376,1340,1344,1485,1766,1769: Rewrite log forwarding#109168

Open
johnwilkins wants to merge 3 commits intoopenshift:standalone-logging-docs-mainfrom
johnwilkins:OBSDOCS-1376
Open

OBSDOCS-1376,1340,1344,1485,1766,1769: Rewrite log forwarding#109168
johnwilkins wants to merge 3 commits intoopenshift:standalone-logging-docs-mainfrom
johnwilkins:OBSDOCS-1376

Conversation

@johnwilkins
Copy link
Copy Markdown
Contributor

@johnwilkins johnwilkins commented Mar 27, 2026

In this PR, I've rewritten the "Configuring log forwarding" chapter. When triaging bugs, I noticed a lot of critical bugs associated to this section, and this was the section on my own "journey" installing and testing in my home lab environment.

Bug fixes and friction points resolved through live cluster testing:

  • Fix silent TLS failure: CLF reports Ready but collector drops logs when tls.ca block is missing (OBSDOCS-1344). Added IMPORTANT admonition and mandatory tls.ca in CLF procedure.
  • Fix cascading RBAC failure: missing ClusterRoleBinding causes Operator to delete collector DaemonSet with no user-facing error (OBSDOCS-1340). Added CAUTION block to RBAC procedure.
  • Fix incorrect collector label selector: docs used '-l component=collector' but actual pod label is 'app.kubernetes.io/component=collector'. All verification and troubleshooting commands returned empty results.
  • Fix missing verification path: no procedure existed to confirm logs flow end-to-end (OBSDOCS-1376). Created verifying module covering status conditions, pod checks, and console verification.
  • Fix missing CLF structure reference: no diagram, no worked example, no status condition docs (OBSDOCS-1485). Created concept and reference modules with data flow overview and condition table.
  • Fix scattered filter docs: drop and prune procedures were inlined in a single module with H2 sections, violating DITA task rules. Split into separate single-procedure modules.

New modules (11):
about-log-forwarding, clf-structure-reference, creating-clf-for-lokistack, verifying-log-collection, adding-audit-log-collection, adding-a-drop-filter, adding-a-prune-filter, filtering-collected-logs, setting-collector-log-level, setting-collector-resource-limits, troubleshooting-log-collection

Rewritten modules (2):
setting-up-log-collection, creating-logfilesmetricexporter

Assembly restructured to follow the post-install user journey:
About > Reference > RBAC > Create CLF > Verify > Extend > Filter >
Tune > LFME > Troubleshoot > Third-party destinations

Ch2 (cluster-logging-collector) slimmed to advanced-only topics:
input receivers, rollout strategy, network policies.

Dead code cleanup: removed 4 legacy directories (config/, log_collection_forwarding/, log_visualization/, log_storage/) and orphaned tuning-the-collector module. All were commented out or unreferenced in _topic_map.yml.

Version(s): 4.6

Issue(s):
https://redhat.atlassian.net/browse/OBSDOCS-1340
https://redhat.atlassian.net/browse/OBSDOCS-1376
https://redhat.atlassian.net/browse/OBSDOCS-1344
https://redhat.atlassian.net/browse/OBSDOCS-1485
https://redhat.atlassian.net/browse/OBSDOCS-1766
https://redhat.atlassian.net/browse/OBSDOCS-1769

Link to docs preview:

https://109168--ocpdocs-pr.netlify.app/openshift-logging/latest/configuring/cluster-logging-collector.html
https://109168--ocpdocs-pr.netlify.app/openshift-logging/latest/configuring/configuring-log-forwarding.html

https://109168--ocpdocs-pr.netlify.app/openshift-logging/latest/configuring/cluster-logging-collector.html
https://109168--ocpdocs-pr.netlify.app/openshift-logging/latest/configuring/configuring-log-forwarding.html

QE review:

  • QE has approved this change.

Additional information:

There were some 5.x directories that contained dead content from a previous migration to 6.x. Deletions are about repo hygiene.

…ding chapter

Bug fixes and friction points resolved through live cluster testing:

- Fix silent TLS failure: CLF reports Ready but collector drops logs
  when tls.ca block is missing (OBSDOCS-1344). Added IMPORTANT
  admonition and mandatory tls.ca in CLF procedure.
- Fix cascading RBAC failure: missing ClusterRoleBinding causes
  Operator to delete collector DaemonSet with no user-facing error
  (OBSDOCS-1340). Added CAUTION block to RBAC procedure.
- Fix incorrect collector label selector: docs used
  '-l component=collector' but actual pod label is
  'app.kubernetes.io/component=collector'. All verification and
  troubleshooting commands returned empty results.
- Fix missing verification path: no procedure existed to confirm
  logs flow end-to-end (OBSDOCS-1376). Created verifying module
  covering status conditions, pod checks, and console verification.
- Fix missing CLF structure reference: no diagram, no worked example,
  no status condition docs (OBSDOCS-1485). Created concept and
  reference modules with data flow overview and condition table.
- Fix scattered filter docs: drop and prune procedures were inlined
  in a single module with H2 sections, violating DITA task rules.
  Split into separate single-procedure modules.

New modules (11):
  about-log-forwarding, clf-structure-reference,
  creating-clf-for-lokistack, verifying-log-collection,
  adding-audit-log-collection, adding-a-drop-filter,
  adding-a-prune-filter, filtering-collected-logs,
  setting-collector-log-level, setting-collector-resource-limits,
  troubleshooting-log-collection

Rewritten modules (2):
  setting-up-log-collection, creating-logfilesmetricexporter

Assembly restructured to follow the post-install user journey:
  About > Reference > RBAC > Create CLF > Verify > Extend > Filter >
  Tune > LFME > Troubleshoot > Third-party destinations

Ch2 (cluster-logging-collector) slimmed to advanced-only topics:
  input receivers, rollout strategy, network policies.

Dead code cleanup: removed 4 legacy directories (config/,
log_collection_forwarding/, log_visualization/, log_storage/) and
orphaned tuning-the-collector module. All were commented out or
unreferenced in _topic_map.yml.
@openshift-ci openshift-ci bot added the size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. label Mar 27, 2026
@ocpdocs-previewbot
Copy link
Copy Markdown

ocpdocs-previewbot commented Mar 27, 2026

The portal build converts AsciiDoc to DocBook XML. Backticks in
titles produce <literal> tags that cannot nest inside <title>
elements, causing 'emphasis/literal tag mismatch' validation failure.

Removed backticks from the 'Creating a ClusterLogForwarder for
LokiStack' title and matching cross-reference text.
The asterisks in openshift-* and kube-* inside backtick strings
were interpreted as emphasis markers by the DocBook converter,
producing overlapping <literal>/<emphasis> XML tags. Escaped with
backslash per existing repo convention (enabling-loki-alerts.adoc).

Verified locally: xmllint --noout passes on the DocBook output.
@openshift-ci
Copy link
Copy Markdown

openshift-ci bot commented Mar 27, 2026

@johnwilkins: 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.

Copy link
Copy Markdown
Contributor

@JoaoBraveCoding JoaoBraveCoding left a comment

Choose a reason for hiding this comment

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

Overall lgtm, I'll not add the /lgtm since I'm not as familiar with the collector side as someone from the collection team.


:_mod-docs-content-type: PROCEDURE
[id="verifying-log-collection_{context}"]
= Verifying that log collection is working
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.

Shouldn't this section be under "Creating a ClusterLogForwarder for LokiStack"?

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

Labels

size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants