Date: Mon, 24 Jan 2005 12:18:46 -0500 From: Gerard Samuel <fbsd-questions@trini0.org> To: freebsd-questions <freebsd-questions@freebsd.org> Subject: [Repost] Logging to custom file via syslog [was]: php log to own syslog file Message-ID: <41F52DF6.4050007@trini0.org> In-Reply-To: <41F1400D.4040204@trini0.org> References: <41F136B9.20604@trini0.org> <41F13CFA.9050205@daleco.biz> <41F1400D.4040204@trini0.org>
next in thread | previous in thread | raw e-mail | index | archive | help
> Kevin Kinsey wrote: > >> Gerard Samuel wrote: >> >>> Im trying to figure out how to setup FreeBSD 5.3 to log >>> php events to its own log file via syslog. >>> In /etc/syslog.conf, I added -> >>> # php logs >>> !httpd >>> *.* /var/log/php.log >>> >>> I created a empty file for the log -> >>> gladiator# touch /var/log/php.log >>> gladiator# ls -l /var/log/php* >>> -rw-r--r-- 1 root wheel 0 Jan 20 16:37 /var/log/php.log >>> >>> Then I HUPped syslogd -> >>> gladiator# ps aux | grep syslogd >>> root 277 0.0 0.2 1316 908 ?? Is 4:14PM 0:00.01 >>> /usr/sbin/syslogd -s >>> gladiator# kill -HUP 277 >>> >>> In my php script, Im using -> >>> define_syslog_variables(); >>> openlog('TESTING', LOG_NDELAY, LOG_USER); >>> syslog(LOG_INFO, $message); >>> closelog(); >>> >>> But nothing is being logged to the file. >>> Am I doing something wrong on the FreeBSD side of things?? >>> >>> Thanks >> >> >> >> >> PHP as an Apache module? IANAE, but wouldn't >> you have to change log settings in httpd.conf? > > > I dont think so. These errors, that I want to log, are initiated by > the php function syslog() (look at the example above). > These messages are supposed to go to the syslogd daemon, not to > httpd's log file. > In the example above, if I change the priority from "LOG_INFO" to > "LOG_WARNING", > the error messages go to /var/log/messages. > I just need it to start going to its own file. > The ultimate goal, is that I want to have a cluster of webservers, > logging to a central server. I think this is a FreeBSD problem. Here is what I have. 1. I removed my initial modification of /etc/syslog.conf, and added -> user.=info /var/log/php.log According to syslog.conf man page, that should mean, any syslog events that come is as LOG_USER, and only LOG_INFO, should be appended to /var/log/php.log 2. I HUPped syslogd. 3. Im using logger to try to add a message to the log file like -> gladiator# logger -s -p user.info test gsam: test But unfortunately, the message "test" doesn't appear in /var/log/php.log OR /var/log/messages. I currently have the file /var/log/php.log chmodded to 777. Im including my syslog.conf file. Can anyone tell me, as to why, Im unable to log these tests? Thanks /etc/syslog.conf ---- # $FreeBSD: src/etc/syslog.conf,v 1.26 2003/04/23 13:08:31 des Exp $ # # Spaces ARE valid field separators in this file. However, # other *nix-like systems still insist on using tabs as field # separators. If you are sharing this file between systems, you # may want to use only tabs as field separators here. # Consult the syslog.conf(5) manpage. *.err;kern.debug;auth.notice;mail.crit /dev/console *.notice;authpriv.none;kern.debug;lpr.info;mail.crit;news.err /var/log/messages security.* /var/log/security auth.info;authpriv.info /var/log/auth.log mail.info /var/log/maillog lpr.info /var/log/lpd-errs ftp.info /var/log/xferlog cron.* /var/log/cron *.=debug /var/log/debug.log *.emerg * # uncomment this to log all writes to /dev/console to /var/log/console.log #console.info /var/log/console.log # uncomment this to enable logging of all log messages to /var/log/all.log # touch /var/log/all.log and chmod it to mode 600 before it will work #*.* /var/log/all.log # uncomment this to enable logging to a remote loghost named loghost #*.* @loghost # uncomment these if you're running inn # news.crit /var/log/news/news.crit # news.err /var/log/news/news.err # news.notice /var/log/news/news.notice !startslip *.* /var/log/slip.log !ppp *.* /var/log/ppp.log user.=info /var/log/php.log
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?41F52DF6.4050007>