Hi all,
I want to use syslog-ng to log the messages generated by my application implemented in C language. I added this in the code:
char *log="rtcd";
printf("[%s] RTC adjustement\n",__func__);
openlog(log, LOG_PID, LOG_LOCAL0);
syslog(LOG_DEBUG, "[FIJ] RTC adjustement");
closelog();
For me, according to the syslog-ng file, the files /var/log/ldb/GENTrace.log, /var/log/ldb/SUTrace.log, /var/log/ldb/WANTrace.log and /var/log/ldb/CPLTrace.log must be
created and must contain the syslog message.
But I got no messages in my destination files. You can see the content of my syslog-ng.conf file bellow.
Is it the right way to log the messages sent by C program? What can explain that I got no messages in the destinations files?
I am using syslog-ng 3.5.4.1 provided by yocto. And in the script which run the binary (initscript file) I remove the line below:
. /etc/init.d/functions
Why are you using the line? Is it necessary to use it?
Concerning log file rotation, How can we manage it using syslog-ng? For example I want to have a destination file with a size maximum = 2Mo and if the size is greater than the max size, I have to save the current one and create a new one. On my
system I can have max 4 files (4 x 2Mo). How can I manage this kind of rotation?
Thanks in advance.
Best regards,
Ismael Jean FAYE
@version: 3.5
#
# Syslog-ng configuration file, compatible with default Debian syslogd
# installation. Originally written by anonymous (I can't find his name)
# Revised, and rewrited by me (SZALAY Attila <sasa@debian.org>)
# First, set some global options.
options { chain_hostnames(off); flush_lines(0); use_dns(no); use_fqdn(no);
owner("root"); group("adm"); perm(0640); stats_freq(0);
bad_hostname("^gconfd$");create_dirs(yes);
};
########################
# Sources
########################
source s_mysource {
pipe("/tmp/pipe" pad_size(2048));
};
########################
# Destinations
########################
destination d_GEN {
file("/var/log/ldb/GENTrace.log");
};
destination d_SU {
file("/var/log/ldb/SUTrace.log");
};
destination d_WAN {
file("/var/log/ldb/WANTrace.log");
};
destination d_CPL {
file("/var/log/ldb/CPLTrace.log");
};
########################
# Filters
########################
#filter f_GEN {
#facility(local0) and filter(nom_du_composant_applicatif);
#facility(local0) and filter(f_debug);
#facility(local0);
#};
filter f_SU {
#facility(local0) and filter(nom_du_composant_applicatif);
#facility(local0) and filter(f_debug);
facility(local0);
};
filter f_WAN {
#facility(local0) and filter(nom_du_composant_applicatif);
#facility(local0) and filter(f_debug);
facility(local0);
};
filter f_CPL {
#facility(local0) and filter(nom_du_composant_applicatif);
#facility(local0) and filter(f_debug);
facility(local0);
};
########################
# Log paths
########################
#log { source(s_mysource); filter(f_GEN); destination(d_GEN); };
log { source(s_mysource); filter(f_SU);
destination(d_SU); };
log { source(s_mysource); filter(f_WAN); destination(d_WAN); };
log { source(s_mysource); filter(f_CPL); destination(d_CPL); };