19359 Commits

Author SHA1 Message Date
Rainer Gerhards
71dd1fc18e
Merge pull request #5958 from mbiebl/mongoc2
Various mongo-c-driver v2 related fixes for ommongodb
2025-09-11 08:56:25 +02:00
Rainer Gerhards
6847a49ec0
Merge pull request #6111 from rgerhards/PR-2925
core: add setting to permit compact json format
2025-09-10 18:26:32 +02:00
Rainer Gerhards
0dd0e3c4fd
Merge pull request #6116 from rgerhards/docker-dev-deb13
docker: update Debian 13 build to inlcude more modules
2025-09-10 18:22:19 +02:00
Rainer Gerhards
87af201406
doc: improg had a strangely worded limitation listed - corrected (#6115)
The doc basically said C stdio and select() are not compatible. This of
course is invalid. It is stdio buffering what can cause issues
with the module. Provided better advise now.
2025-09-10 18:18:59 +02:00
Rainer Gerhards
bcadef92aa
docker: update Debian 13 build to inlcude more modules
Some module which could have been built on this platform were not
enabled, namely: ommongodb, omclickhouse, imkmsg, mmdblookup

see also:https://github.com/rsyslog/rsyslog/issues/5566
2025-09-10 18:14:45 +02:00
Michael Biebl
5113d43bfb ommongodb: fix compilation of SSL/TLS support
The change in #2950 introduced

AC_CHECK_FUNCS(mongoc_client_set_ssl_opts,,)

This check always returns "no", so SSL/TLS support was always disabled
even if mongo-c-driver had been built with SSL/TLS support. So while it
fixed the build failure it meant that this specific code in ommongodb
was no longer enabled.

Instead, use the define that is provided by mongo-config.h:

/*
 * MONGOC_ENABLE_SSL is set from configure to determine if we are
 * compiled with any SSL support.
 */
2025-09-10 15:35:09 +02:00
Michael Biebl
2d6de51797 ommongodb: add support for mongo-c-driver v2
Update pkg-config check for v2 of mongo-c-driver

The name of the pkg-config file has changed from libmongoc-1.0.pc to
mongoc2.pc. First try the new version and keep the old version as
fallback.

In version 1.13.0, the headers were re-organized and the preferred way
of including the headers are <mongoc/mongo.h> and <bson/bson.h>.
Forwarding headers to keep backwards compatibility were introduced that
have been removed in v2.

To support building on CentOS 7 and Ubuntu 18, which ship versions older
than 1.13.0, keep using the old include names for v1 and use the new
include names for v2.

Once the minimum version of mongo-c-driver is bumped to >= 1.13.0, this
fallback can be dropped.
2025-09-10 15:35:08 +02:00
Rainer Gerhards
a95db771bf
improve original patch 2025-09-10 14:46:48 +02:00
zhuyan
59235f8396
core: add setting to permit compact json format
Adds the ability to remove unnecessary spaces from genrated json
to conserve space, e.g. on disk.

Maintainer edit: this replaces orginal PR which was too hard to
  rebase. This was caused by too-slow reaction of the rsyslog team.

see also: https://github.com/rsyslog/rsyslog/pull/2925
  (this is the original PR)

closes: https://github.com/rsyslog/rsyslog/issues/2913
2025-09-10 14:42:48 +02:00
Rainer Gerhards
565d4f9eb0
maintain ChangeLog 2025-09-10 14:10:11 +02:00
Rainer Gerhards
06bd33f8f9
Merge pull request #6075 from alorbach/cursor/add-github-pages-deployment-to-doc-build-workflow-e4b4
CI: Add Sphinx docs PR previews via GitHub Actions Pages
2025-09-10 13:56:30 +02:00
Rainer Gerhards
5b3bb6ee01
Update doc/README.md
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-09-10 12:56:29 +02:00
Rainer Gerhards
79d98b672e
Merge pull request #6070 from alorbach/cursor/implement-batching-and-performance-improvements-48ac
Implement omhttp batching and performance improvements
2025-09-10 12:31:12 +02:00
Rainer Gerhards
24972ca011
Merge pull request #6080 from rgerhards/PR-base64
config script: add b64_decode function
2025-09-09 17:25:56 +02:00
Kevin Guillemot
bb6d7ba5e2
config script: add b64_decode function
This PR provides a new Rainerscript function: b64_decode.

This function is based on RFC4648.
2025-09-09 15:47:11 +02:00
Rainer Gerhards
c0bc827843
Merge pull request #6108 from rgerhards/ci-cleanup
CI remove old kafka codecov builder now the new one is present
2025-09-09 15:25:18 +02:00
Rainer Gerhards
5462bca5fe
CI: remove Ubuntu 18 due to EOL
We also do no longer build packages for it due to being EOL.
2025-09-09 15:22:44 +02:00
Rainer Gerhards
e1e13e57f7
maintain ChangeLog 2025-09-09 15:09:04 +02:00
Rainer Gerhards
ce3ff7871f
Merge pull request #5268 from aliask/imdocker-image-name
imdocker: Add image name to metadata fields
2025-09-09 15:03:34 +02:00
Rainer Gerhards
6916a49cea
Merge pull request #6109 from rgerhards/ci-codecov-push
CI: enable pushing to Codecov for main branch push
2025-09-09 14:46:17 +02:00
Rainer Gerhards
e1bb712923
CI: enable pushing to Codecov for main branch push
This usually happens by merging. It is important because it sets
the baseline for codecov reports.
2025-09-09 14:37:37 +02:00
Rainer Gerhards
c89113d531
core: add fromhost-port message property
Some deployments need to disambiguate multiple senders sharing an IP,
for example autossh or similar tunnel setups. Exposing the source port
improves observability and lets pipelines key on a stable tuple.

Impact: new property/JSON field; tcps_sess IF v4; out-of-tree modules
must rebuild.

Before: messages exposed fromhost and fromhost-ip only.
After:  messages also expose fromhost-port and jsonmesg includes it.

Introduce PROP_FROMHOST_PORT and wire it through msg.{h,c}. For TCP,
capture the remote port on accept, store it in tcps_sess, and attach it
to the msg on submit. For other inputs, resolveDNS derives the port from
the sockaddr when available; local inputs return an empty string. Add a
getter, duplication and destructor handling, and name<->ID mapping. Add
the field to jsonmesg output. Update docs, lexer keywords, and the
external plugin interface doc (property is modifiable). Bump
tcps_sessCURR_IF_VERSION to 4 and add SetHostPort() to the interface.
Include a focused test (fromhost-port.sh) that verifies the property.

Non-technical rationale: allow identification by (fromhost-ip,
fromhost-port) where IP alone is shared across systems (e.g., autossh).

With help from AI-Agents: ChatGPT
2025-09-09 14:29:39 +02:00
Rainer Gerhards
c06f255134
CI remove old kafka codecov builder now the new one is present 2025-09-09 12:50:03 +02:00
Rainer Gerhards
b9b7e28fe3
Merge pull request #6107 from rgerhards/codex/update-doc_reference_section_guidelines.rst
doc: update reference section guidelines.rst
2025-09-09 12:44:30 +02:00
Rainer Gerhards
2b626e7cf6
doc: update reference section on doc structure
The policies have changed to single reference pages, and so must
now change the doc.

With help form AI-Agent: ChatGPT
2025-09-09 12:36:30 +02:00
Rainer Gerhards
bc9a587de3 maintain ChangeLog 2025-09-09 12:07:58 +02:00
Rainer Gerhards
58926a8aab
CI: working towards better kafka coverage in codecov (#6103)
* CI: working towards better kafka coverage in codecov
2025-09-09 12:04:07 +02:00
Rainer Gerhards
e335ff2ae9
CI: nitfix in diag.sh (cosmetic) (#6102) 2025-09-09 11:35:21 +02:00
Ulrike Gerhards
2fd946680e
Codex/refactor rsyslog module parameter documentation mmrfc5424addhmac
* mmrfc5424addhmac: split parameter docs into reference pages

- Split action parameters into individual reference files
- Replace inline parameter list with summary list-table
- Add hidden toctree for new parameter pages

Co-authored-by: ChatGPT, gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-09-09 10:25:19 +02:00
Rainer Gerhards
8f838a397b
Merge pull request #6104 from rgerhards/ci-es-fix
CI: remove invalid codecov call from non-codecov test
2025-09-09 09:52:55 +02:00
Rainer Gerhards
5a7518a13e
CI: remove invalid codecov call from non-codecov test
This was a regression from a few days ago. Undoing it.
2025-09-08 17:46:01 +02:00
Rainer Gerhards
310b7227e1
Merge pull request #6100 from rgerhards/ci-codecov1
CI: provide CodeCov upload via github action
2025-09-08 16:30:19 +02:00
Rainer Gerhards
9e0ecb5f8d
ci: improve Codecov uploads; deflake kafka topics
Motivation: code coverage reports were incomplete. This lays a better
base for consistent reporting via GitHub Actions, with room for follow-ups.
It also removes a test flake source in Kafka jobs.

Impact: CI/tests only; no runtime behavior or ABI changes expected.

Before: Coverage uploads were inconsistent; Kafka tests could hang while
reading from /dev/urandom to generate topic names.
After: Coverage is collected with lcov and uploaded via a dedicated GH
Action; Kafka topics use fast $RANDOM-based hex, avoiding early-boot
entropy stalls.

Technical details:
- Add two workflows: "codecov base" and "codecov kafka" on Ubuntu 24.04.
  Use lcov capture with unexecuted blocks and prune common noise; upload
  with token for same-repo PRs and tokenless for forks.
- Update .codecov.yml: add path fixes for container (/rsyslog) and
  runner layouts; explicitly set comment: false and patch: false.
- Bump actions/checkout to v4 in existing workflows; add an actionlint
  job to catch YAML problems early.
- Switch codecov jobs in container matrix to 24.04 images.
- Improve run-ci.sh lcov invocation to be more tolerant of line/macro
  mismatches.
- Testbench: replace /dev/urandom topic generation with 8-char hex from
  $RANDOM; adjust diag.sh path/quoting for zookeeper helper.
2025-09-08 16:02:01 +02:00
Rainer Gerhards
f21eea8a1d
maitain ChangeLog 2025-09-06 17:57:06 +02:00
Rainer Gerhards
879b582baa
Merge pull request #6097 from rgerhards/codex/check-implementation-status-of-feature-request
rainerscript: add toupper() function
2025-09-06 17:51:57 +02:00
Rainer Gerhards
b463c137e7
Merge pull request #6099 from rgerhards/codex/fix-partial-executable-path-warning
doc: document git path resolution
2025-09-06 17:32:22 +02:00
Rainer Gerhards
cc342c8f99 doc: document git path resolution
Add a comment explaining why the git executable is resolved with\nshutil.which and used for all subprocess calls.\n\nAI-Agent: ChatGPT
2025-09-06 17:29:48 +02:00
Rainer Gerhards
7d3b9c454c
CI: add test for rainerscript tolower() function
This was obviously untested so far.
2025-09-06 17:08:53 +02:00
Rainer Gerhards
ca34dc31cd
rainerscript: add toupper() function
Add a RainerScript function to convert strings to uppercase. The
implementation mirrors tolower() but operates per-byte using
toupper(). Tests demonstrate the new function, documentation and
ChangeLog entries added.

closes: https://github.com/rsyslog/rsyslog/issues/3666

With the help of AI-Agent: ChatGPT
2025-09-06 17:08:35 +02:00
Rainer Gerhards
2ca807fe09
Merge pull request #6098 from rgerhards/dev-dockerfiles
CI: update development containers
2025-09-06 14:15:31 +02:00
Rainer Gerhards
bab714c5b2
CI: update development containers
- newer distro versions
- no longer cache third-party dependencies
- imhttp support improved
2025-09-06 14:12:16 +02:00
Rainer Gerhards
07dd4f46ff
Merge pull request #6096 from rgerhards/tsan-disable-imhttp
CI: disable TSAN chekcs for imhttp which fail due to civetweb
2025-09-06 11:32:32 +02:00
Rainer Gerhards
a62f50fa2c
maintain ChangeLog 2025-09-06 11:26:05 +02:00
Rainer Gerhards
8d3f1adde3
Merge pull request #6094 from aliask/clang-format-18
devtools: Specify usage of clang-format-18 to pin v18
2025-09-06 11:22:50 +02:00
Rainer Gerhards
1965b506e5
CI: disable TSAN chekcs for imhttp which fail due to civetweb
The civetweb library is not packaged in a thread-safe way and as such
TSAN always fails due to a civetweb data race by calling gmtime.
Nothing to do so far against that.
2025-09-06 11:07:27 +02:00
Will Robertson
ecda645380
devtools: Specify usage of clang-format-18 to pin v18 2025-09-06 10:34:23 +10:00
Rainer Gerhards
72d54c8fa8
Merge pull request #6092 from rgerhards/sid
CI: replace debian 11 with sid in test runs
2025-09-05 18:33:48 +02:00
Rainer Gerhards
a9168ea4bb
Merge pull request #6091 from alorbach/pr/makefile4distdoc
doc: restore missing doc files in configure.ac
2025-09-05 17:54:12 +02:00
Rainer Gerhards
3533ee07b5
Merge pull request #6089 from rgerhards/codex/find-functions-using-classic-c-f-calling-sequence
misc: add void parameter lists
2025-09-05 17:48:05 +02:00
Rainer Gerhards
057de60f3c
CI: replace debian 11 with sid in test runs
We try sid to gain early access to new compiler versions. It needs
to be show if sid causes too many false positives (due to its own
instability) and if we manage to regenerate the compiler frequently
enough.
2025-09-05 17:44:49 +02:00