(* syslog(3) routines for ocaml Copyright (C) 2002 Shawn Wagner This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *) (** Syslog routines *) (** These are based on the unix syslog(3) function and relatives. *) (** The assorted logging facilities. The default is [`LOG_USER]. You can set a new default with openlog, or give a specific facility per syslog call. *) type facility = [ `LOG_KERN | `LOG_USER | `LOG_MAIL | `LOG_DAEMON | `LOG_AUTH | `LOG_SYSLOG | `LOG_LPR | `LOG_NEWS | `LOG_UUCP | `LOG_CRON | `LOG_AUTHPRIV | `LOG_FTP | `LOG_NTP | `LOG_SECURITY | `LOG_CONSOLE | `LOG_LOCAL0 | `LOG_LOCAL1 | `LOG_LOCAL2 | `LOG_LOCAL3 | `LOG_LOCAL4 | `LOG_LOCAL5 | `LOG_LOCAL6 | `LOG_LOCAL7 ] (** Flags to pass to openlog. [`LOG_CONS] isn't implemented yet. *) type flag = [ `LOG_CONS | `LOG_NDELAY | `LOG_PERROR | `LOG_PID ] (** The priority of the error. *) type level = [ `LOG_EMERG | `LOG_ALERT | `LOG_CRIT | `LOG_ERR | `LOG_WARNING | `LOG_NOTICE | `LOG_INFO | `LOG_DEBUG ] (** If your syslogd unix socket isn't /dev/log, call this before openlog or syslog to change it to the proper file *) val set_logpath: string -> unit (** If your syslogd unix socket isn't a datagram one [Unix.SOCK_DGRAM]), call this with the proper one before openlog or syslog *) val set_socktype: Unix.socket_type -> unit (** Same as openlog(3) *) val openlog: string -> flag list -> facility -> unit (** Same as syslog(3), except there's no formats. *) val syslog: ?fac:facility -> level -> string -> unit (** Close the log *) val closelog: unit -> unit