[syslog-ng] Named Log Entries in the Config File
Kenneth Kassing
kassing at patton.com
Wed Jan 4 18:05:57 CET 2006
Hello,
I am writing a program to make updates tho the syslog-ng configuration
file. To allow for easily adding and removing log entries, I updated
the parser gramer to allow a name field in the log entry. The name is
optional, so old log files will still work. This name is not used by
syslog-ng in any way.
Example: Both log entries below are valid with my grammar update.
log {
source(s_all);
filter(f_syslog);
destination(df_syslog);
};
log l_syslog {
source(s_all);
filter(f_syslog);
destination(df_syslog);
};
A patch generated with the following command is attached: "diff -uprN
src/cfg-grammar.y.org src/cfg-grammar.y > ~/cfg-grammar.y.diff"
-------------- next part --------------
--- src/cfg-grammar.y.org 2006-01-04 11:04:19.000000000 -0500
+++ src/cfg-grammar.y 2006-01-04 11:06:08.000000000 -0500
@@ -113,6 +113,8 @@ LogTemplate *last_template;
%type <ptr> source_stmt
%type <ptr> dest_stmt
%type <ptr> log_stmt
+%type <ptr> log_stmt_name
+%type <ptr> log_stmt_noname
%type <ptr> options_stmt
%type <ptr> template_stmt
@@ -202,7 +204,16 @@ dest_stmt
;
log_stmt
- : '{' log_items log_flags '}' { $$ = log_connection_new($2, $3); }
+ : log_stmt_noname { $$ = $1; }
+ | log_stmt_name { $$ = $1; }
+ ;
+
+log_stmt_name
+ : string '{' log_items log_flags '}' { $$ = make_log_connection($3, $4); }
+ ;
+
+log_stmt_noname
+ : '{' log_items log_flags '}' { $$ = make_log_connection($2, $3); }
;
options_stmt
More information about the syslog-ng
mailing list