Replace embedded ivykis with a separate package to improve
dependency management and enable library reuse.
The ivykis library now properly supports io_uring when
CONFIG_KERNEL_IO_URING is enabled.
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
Release notes:
https://github.com/syslog-ng/syslog-ng/releases/tag/syslog-ng-4.10.0
Makefile changes
----------------
1. Disable experimental feature: stackdump
due to issues, which were reported to upstream
2. Disabled example modules to avoid adding libstdc++.so.6 dependency
Fixes:
Package syslog-ng is missing dependencies for the following libraries:
libstdc++.so.6
Other changes
-------------
In syslog-ng 4.8.0, there was added possibility to use value "current"
as version in the config file, so use it, which confirm to use
the latest version instead of bumping the version in the file
manually.
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
It adds a runtime test to verify that the compiled binary in
CI/CD runs without segfault and prints the version.
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
When the syslog-ng installed it records all messages to /var/log/messages.
This makes the default OpenWrt's ubox /sbin/logread useless and return nothing.
The logread script was added to the syslog-ng as a shim.
It's based on `tail /var/log/messages` and repeats basic options that the ubox logread have.
The script is installed instead of the /sbin/logread and this is causes an error.
Instead install it to /usr/libexec/logread.sh and specify as an alternative /sbin/logread.
The ubox logread also needs to be made as alternative in /usr/libexec/logread-ubox.
So we need to give it a separate name.
The most simple and clear would be logread-shell or just logread.sh.
Suggested-by: Andreas Gnau <andreas.gnau@iopsys.eu>
Signed-off-by: Sergey Ponomarev <stokito@gmail.com>
Since version 4.4.0, syslog-ng added compression to http() destination
using zlib from curl. [1] However, zlib is currently disabled in curl [2]
and it prevented syslog-ng to start.
This commit changes the configuration opinion to enable http module only if
zlib support is enabled for curl and as well it adds dependency for zlib (in that case).
If the zlib is disabled, then it disables http module, so syslog-ng can start
and thus zlib dependency is not required.
[1] https://gitlab.nic.cz/turris/os/packages/-/issues/932
[2] 93cbaacbfb/net/curl/Config.in (L134)
Fixes: 4dd49d7c3c ("syslog-ng: update to version 4.4.0")
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
Since February 2023, I decided to no longer work with Turris, I mean CZ.NIC company
due to some reasons how the development goes and since that day my work address is not
available and not sure if there is some redirect to someone else, but if anyone wants to
reach me, use my email address, where they can find me.
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
Automatically compute and substitute current values for all
$(AUTORELEASE) instances as this feature is deprecated and shouldn't be
used.
The following temporary change was made to the core:
diff --git a/rules.mk b/rules.mk
index 57d7995d4fa8..f16367de87a8 100644
--- a/rules.mk
+++ b/rules.mk
@@ -429,7 +429,7 @@ endef
abi_version_str = $(subst -,,$(subst _,,$(subst .,,$(1))))
COMMITCOUNT = $(if $(DUMP),0,$(call commitcount))
-AUTORELEASE = $(if $(DUMP),0,$(call commitcount,1))
+AUTORELEASE = $(if $(DUMP),0,$(shell sed -i "s/\$$(AUTORELEASE)/$(call commitcount,1)/" $(CURDIR)/Makefile))
all:
FORCE: ;
And this command used to fix affected packages:
for i in $(cd feeds/packages; git grep -l PKG_RELEASE:=.*AUTORELEASE | \
sed 's^.*/\([^/]*\)/Makefile^\1^';);
do
make package/$i/download
done
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
With heavy system logging which goes by default into `/var/log/messages`
log file which is usually placed in tmpfs/RAM one can trigger OOM killer
fairly easily, thus killing random processes and in some cases making
system unusable.
This is likely happening due to the fact, that Linux by default uses 1/2
of available RAM for tmpfs, which might be for example an issue on low
RAM devices with ath10k wireless.
So let's fix it by adding logrotate functionality which should limit the
size of `/var/log/messages` log file to 1M by default, but could be
tweaked by config knob if needed be.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
configure script detects Darwin and uses flags incompatible with
Linux target build.
This patch uses fakeuname tool if host OS is MacOS to avoid Darwin
detection on target build.
Signed-off-by: Sergey V. Lobanov <sergey@lobanov.in>
Also bump the version in syslog-ng config file.
Removes this warning:
Nov 16 14:19:41 turris syslog-ng[15159]: WARNING: Configuration file format is too old, syslog-ng is running in compatibility mode. Please update it to use the syslog-ng 3.35 format at your time of convenience. To upgrade the configuration, please review the warnings about incompatible changes printed by syslog-ng, and once completed change the @version header at the top of the configuration file; config-version='3.33'
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
For now, disable mqtt as it was automatically enabled as the build
system finds compiled libpaho-mqtt-c and requires dependency.
---
Here is the output:
Package syslog-ng is missing dependencies for the following libraries:
libpaho-mqtt3c.so.1
---
This is a new feature since syslog-ng 3.33.1 and if anyone is interested
in it, it can be enabled.
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
- Release notes:
https://github.com/syslog-ng/syslog-ng/releases/tag/syslog-ng-3.33.1
- Bump version in config
It fixes:
WARNING: Configuration file format is too old, syslog-ng is running in compatibility mode. Please update it to use the syslog-ng 3.33 format at your time of convenience. To upgrade the configuration, please review the warnings about incompatible changes printed by syslog-ng, and once completed change the @version header at the top of the configuration file; config-version='3.31'
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
This fixes issues:
syslog-ng[3895]: WARNING: Configuration file format is too old, syslog-ng is running in compatibility mode. Please update it to use the syslog-ng 3.29 format at your time of convenience. To upgrade the configuration, please review the warnings about incompatible changes printed by syslog-ng, and once completed change the @version header at the top of the configuration file; config-version='3.26'
Fixes: 06f3ac21b4 ("syslog-ng: update to
version 3.29.1")
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
Binding in default to IPv6 is preferable but it can be disabled in
kernel and that prevents syslog-ng to start. This setup should not be
that common but syslog is very important service and should survive
that.
This introduces new plugin defining source generator
`network_localhost`. This is used instead of original network source.
Signed-off-by: Karel Kočí <cynerd@email.cz>
Commit 44a16ca broke syslog-ng such that it no longer works with
logrotate, for example. Yes, you can manually stop and start the
service, but (1) you shouldn't have to and (2) it creates a window
where you potentially lose messages if the syslog UDP socket
overruns.
Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
Initially we included user-specific settings last, so that they
could turn off or replace system settings... otherwise we only get
to change what's NOT explicitly set by the system. This is overly
constraining.
Restore the original functionality of allowing the user to
override settings defined by the distribution's configuration.
Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
- Bump version also in the config file
- Move logread to /sbin location instead of /usr/sbin
Because package logd in OpenWrt's ubox Makefile uses /sbin folder and LuCI has
the same path hardcoded in
modules/luci-base/root/usr/share/rpcd/acl.d/luci-base.json and using
different location results that LuCI is not able to load log data as it
is not found.
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
- Bump version in the config and improve a link for documentation
- Disable snmp destination for now
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
This fixes service stop. Problem was that in default syslog-ng forks to
background which causes procd to loose track of it. It no longer has in
such case PID of syslog-ng process and is unable to stop it. This means
that instance for such process hangs in procd and also it is not
possible to stop it as daemon. Fix is simple. syslog-ng is now
instructed to run in foreground.
This commit also drops unnecessary reload section. In default reload
calls restart and restart in default is implemented as calling stop and
start. This means that effectively it is implemented same as in case of
this init reload service implementation.
Signed-off-by: Karel Kočí <karel.koci@nic.cz>