Bug 237887

Summary: syslog-ng not tolerant of configuration errors
Product: [Fedora] Fedora Reporter: Steve Friedman <steve>
Component: syslog-ngAssignee: Douglas E. Warner <silfreed>
Status: CLOSED CANTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: medium    
Version: 6CC: jose.p.oliveira.oss, pvrabec
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-02-23 04:12:25 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Steve Friedman 2007-04-25 21:11:42 UTC
Description of problem:

Syslog-ng is not tolerant of configuration errors -- rather than start those
elements that are valid, it will not start at all.

Version-Release number of selected component (if applicable):
syslog-ng-1.6.12-1.fc6

How reproducible:
Always

Steps to Reproduce:
1. Configure syslog-ng with a partially invalid configuration (see below for
some examples).
2. /etc/init.d/syslog-ng start
3.
  
Actual results:
Syslog-ng will fail to start, generating an explanation of the problem.

Expected results:
Syslog-ng should start those destinations / sources / filters that are valid. 
It should still generate an explanation of what wasn't started, but valid
elements should live.


Additional info:
Examples of invalid configurations include:

- destination bogus   { udp( "dest_addr" localip(non-existent-addr) port(8913) 
); };
  In this case, as syslog-ng can't bind to non-existent-addr, only this
destination should be disabled (rather than the entire logging system).

- log { source(s_sys);  destination(non-existent); }
  Again, the non-existent destination should disable this one log element, not
the entire logging system.

Comment 1 Douglas E. Warner 2008-02-23 04:12:25 UTC
syslog-ng doesn't support silently ignoring config options.  Their desired 
behavior for upstream is to error out when configured options won't work.