!!prog causes subsequent block to abort evaluation when a message matches.

*.* means match everything. You have two of those statements. But first one 
will always match. Next one should not be evaluated as per !!prog logic then.
I think you proved that this is the case when you changed order of your 
statements.Right?
     On Saturday, January 10, 2026 at 06:48:26 PM GMT+9, Simen Stavdal 
<[email protected]> wrote:  
 
 Hi Michael,
>From what I can see in the man pages, it should log to both.Example from the 
>man page :
# Everybody gets emergency messages, plus log them on another
# machine.
*.emerg *
*.emerg @arpa.berkeley.edu

This, however, is outside the !! (per daemon logs).As a test, would it work if 
you set up logging to two destinations "globally", i.e outside the logging 
rules for the particular daemon?
/s

On Sun, 4 Jan 2026 at 00:14, Michael Graves <[email protected]> wrote:

I am trying to use the syslog !!prog syntax and am running into 
problems, before I go to far down the rabbit hole of trying to identify 
a bug, I would like to make sure that my expectations are sane.  I am 
try to use syslog.conf with the following syntax

    !!relayd
    *.*     /var/log/relayd
    *.*     tls4://logginghost:8513
    !*
    <rest of standard syslog.conf>

When relayd generates a log it only is written to the /var/log/relayd 
file.  If I switch the order, then the log will only be written to 
loginghost.

My expectation would be that both destinations would have the log 
written.  Am I misunderstanding the man page?

Thanks for any insight or corrections.


  

Reply via email to