问题
I'm trying to decide what functionality to use for logging to a custom file.
Background
We have several PHP processes, both running as Apaches (mod_php) and as Deamons (CLI, forked). I would like to be able to specify a log file per process/task to write to. For both the Apache processes as the Deamons, multiple processes will be writing to the same file.
Options
PHP offers both error_log() and syslog(). Both seem to offer more or less the same functionality.
My question
- What are the pros and cons of those functions?
- Which one to choose? (and why?)
- What if I drop the requirement of multiple files?
回答1:
syslog
sends the message to the OS logger, while error_log
has multiple options, either to the OS logger, to an email, to a file, or to the SAPI logging handler, as is stated in the documentation.
Since you say yo want to write on multiple logs, I'd recommend error_log
with $message_type = 3
, wich lets you add messages to the file set in the $destination
parameter.
来源:https://stackoverflow.com/questions/6409729/phps-error-log-vs-syslog