Red Hat Enterprise Linux 9 became generally available recently. Version 3.35 of syslog-ng has been part of EPEL 9 (the semi-official extra software repo for RHEL maintained by Fedora packagers) for a while and now I enabled a few more destination drivers. I also enabled RHEL 9 support in my unofficial Git snapshot packages, so I can support RHEL 9 together with other RHEL and Fedora versions on the next syslog-ng release.
Before you begin
To test my RHEL 9 packages, you need either RHEL 9 or CentOS Stream 9 installed. I tested my packages on the latter one, and by now both should be approximately the same. AlmaLinux 9 also works perfectly, as I learned after I finished writing this blog.
Testing the EPEL 9 packages
The EPEL 9 packages lack a few destination drivers due to missing dependencies. Luckily, none of these are widely in use, but still might be missed by some of the users. Missing features include support for SQL, MQTT, and SMTP.
To use the EPEL 9 packages, first you need to enable the repository on your host. Instructions are available at https://docs.fedoraproject.org/en-US/epel/#_el9 both for RHEL 9 and CentOS Stream 9. As syslog-ng needs a lot of extra dependencies to build support for all of its source and destination drivers, the syslog-ng package is divided into a base package and sub packages. The base package comes with minimal dependencies, while most features that need extra dependencies (for example, HTTP support) are available in sub packages. Check your package manager for available sub packages.
For example, to install syslog-ng with HTTP support, which enables support for Elasticsearch and various cloud services, you can use:
dnf install syslog-ng-http
This will also install the base package.
Testing the Git snapshot packages
Some of the syslog-ng dependencies in the Git snapshot repository come from EPEL, so you need to enable that repository first. For details, see the previous section of my blog. Then enable the Git snapshot repository from Copr. Instructions: https://copr.fedorainfracloud.org/coprs/czanik/syslog-ng-githead/
Installing packages is the same as previously: list the available packages and install the ones you need. Here, only the SQL destination is missing from the available features. Where a dependency is missing from EPEL, I added the packages to my repository.
What is next?
Once a new version of syslog-ng becomes available, it will support RHEL 9 / CentOS Stream 9. Right now, the gap between the official EPEL 9 package and my repositories are minimal, just a minor version and two extra (rarely used) features. Over time, this gap will increase with new features appearing only in my repositories.
If you have questions or comments related to syslog-ng, do not hesitate to contact us. You can reach us by email or even chat with us. For a list of possibilities, check our GitHub page under the “Community” section at https://github.com/syslog-ng/syslog-ng. On Twitter, I am available as @PCzanik.