# syslog

(PHP 4, PHP 5, PHP 7)

syslog — Generate a system log message

### 说明

syslog ( int `$priority` , string `$message` ) : bool

syslog() generates a log message that will be distributed by the system logger.

For information on setting up a user defined log handler, see the syslog.conf (5) Unix manual page. More information on the syslog facilities and option can be found in the man pages for syslog (3) on Unix machines.

### 参数

`priority`

  `priority` is a combination of the facility and the level. Possible values are:

  syslog() Priorities (in descending order)
  Constant | Description
  --- | ---
  `LOG_EMERG` | system is unusable
  `LOG_ALERT` | action must be taken immediately
  `LOG_CRIT` | critical conditions
  `LOG_ERR` | error conditions
  `LOG_WARNING` | warning conditions
  `LOG_NOTICE` | normal, but significant, condition
  `LOG_INFO` | informational message
  `LOG_DEBUG` | debug-level message

`message`

  The message to send, except that the two characters %m will be replaced by the error message string (strerror) corresponding to the present value of errno.

### 返回值

成功时返回 `TRUE`， 或者在失败时返回 `FALSE`。

### 范例

Example #1 Using syslog()

    <?php
    // open syslog, include the process ID and also send
    // the log to standard error, and use a user defined
    // logging mechanism
    openlog("myScriptLog", LOG_PID | LOG_PERROR, LOG_LOCAL0);

    // some code

    if (authorized_client()) {
        // do something
    } else {
        // unauthorized client!
        // log the attempt
        $access = date("Y/m/d H:i:s");
        syslog(LOG_WARNING, "Unauthorized client: $access {$_SERVER['REMOTE_ADDR']} ({$_SERVER['HTTP_USER_AGENT']})");
    }

    closelog();
    ?>

### 注释

On Windows NT, the syslog service is emulated using the Event Log.

> Note:

> Use of LOG_LOCAL0 through LOG_LOCAL7 for the `facility` parameter of openlog() is not available in Windows.

### 参见

- openlog() - Open connection to system logger
- closelog() - 关闭系统日志链接