Skip to content

docs: document and verify every sink use case (Loki, Wazuh, HTTP, syslog) - #31

Open
t-desmond wants to merge 2 commits into
mainfrom
docs/more-context
Open

docs: document and verify every sink use case (Loki, Wazuh, HTTP, syslog)#31
t-desmond wants to merge 2 commits into
mainfrom
docs/more-context

Conversation

@t-desmond

Copy link
Copy Markdown
Collaborator

No description provided.

@onelrian

Copy link
Copy Markdown
Owner

Correction to the scope: the ticket #32 is not just about the Wazuh section. It covers every sink use case claimed in the repo: Grafana Loki, Wazuh syslog, generic HTTP, and generic syslog. Each needs a setup guide with its config and real, reproducible evidence that it works, using examples/local-demo/ where it already exists and extending it where it does not. Work from the ticket's task list; the Wazuh changes in this PR are only part of it.

…log)

Expand the sink docs to cover the full sink matrix from issue #32, with
complete config, worked examples, and real reproducible text evidence for
each sink type. Replace committed screenshots with text output.

- docs/SINKS.md: full setup guides for Loki/Grafana, Wazuh (TCP+UDP with
  copyable decoder and ruleset), generic HTTP webhook, and generic syslog
  (RFC 3164/5424 over TCP/UDP), each with real delivery evidence
- README: rework Verified section to one verified scenario per sink with
  text evidence; drop the flagged screenshot
- examples/local-demo: exercise all five sinks at once (Loki, Wazuh UDP,
  HTTP webhook, syslog TCP+UDP) with new receivers; commit the Wazuh
  decoder and ruleset under wazuh/
@t-desmond t-desmond changed the title docs: enhance Wazuh integration details and add example alert image docs: document and verify every sink use case (Loki, Wazuh, HTTP, syslog) Aug 13, 2026
Comment thread README.md
![Live delivery to Loki and Wazuh](docs/images/live-delivery.png)
![Delivered events queried back from Loki](docs/images/live-loki-query.png)
![Live /healthz, /readyz, and /metrics output](docs/images/live-health-metrics.png)
**Loki / Grafana**: events delivered and queried back via LogQL:

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

where are the images ? we need visual proof right ?

Comment thread README.md
fired rule `108650`:

```json
{"timestamp":"2026-08-13T11:02:48.532+0000","rule":{"level":3,"description":"NetBird audit: user login by desmondtardzenyuy@gmail.com","id":"108650","firedtimes":1,"groups":["netbird_audit","authentication_success"]},"agent":{"id":"000","name":"wazuh-wazuh-helm-manager-worker-0"},"manager":{"name":"wazuh-wazuh-helm-manager-worker-0"},"id":"1786618968.606","full_log":"2026-08-13T11:02:46.437457Z auditbridge netbird-audit: {\"account_id\":null,\"activity\":\"Dashboard login\",\"activity_code\":\"dashboard.login\",\"event_id\":\"36802451\",\"initiator_email\":\"desmondtardzenyuy@gmail.com\",\"initiator_name\":\"Tardzenyuy Desmond\",\"target_id\":\"google-oauth2|110002193708859160832\",\"timestamp\":\"2026-08-13T11:02:46.437457Z\"}","predecoder":{"program_name":"netbird-audit","timestamp":"2026-08-13T11:02:46.437457Z aud"},"decoder":{"name":"netbird-audit"},"data":{"account_id":"null","activity":"Dashboard login","activity_code":"dashboard.login","event_id":"36802451","initiator_email":"desmondtardzenyuy@gmail.com","initiator_name":"Tardzenyuy Desmond","target_id":"google-oauth2|110002193708859160832","timestamp":"2026-08-13T11:02:46.437457Z"},"location":"10.42.0.27"}

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

Real PII + internal infra in a public repo: a real personal email (desmondtardzenyuy@gmail.com), real names, real NetBird event IDs, internal Wazuh hostnames (wazuh-wazuh-helm-manager-worker-0) and an internal IP (10.42.0.27) in the alert JSON. Either swap in the demo's synthetic data (acc-demo-01 / evt-1001...) or redact the identifying fields - or confirm the account holder is OK with this being public.

Comment thread docs/SINKS.md
| `SINK_WAZUH_PROTOCOL` | `tcp` or `udp` | `tcp` |

> [!IMPORTANT]
> A stock Wazuh manager listens for **syslog on UDP port `11514`** (the TCP

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

11514 looks like a typo for 1514 - verify against the actual ossec.conf <remote> block. It also directly contradicts #40's Wazuh example (TCP 1514, RFC 3164): both can't be right, and the two PRs are the same docs work - settle on one PR and reconcile the port guidance between you.

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