sig
  type facility =
    [ `LOG_AUTH
    | `LOG_AUTHPRIV
    | `LOG_CONSOLE
    | `LOG_CRON
    | `LOG_DAEMON
    | `LOG_FTP
    | `LOG_KERN
    | `LOG_LOCAL0
    | `LOG_LOCAL1
    | `LOG_LOCAL2
    | `LOG_LOCAL3
    | `LOG_LOCAL4
    | `LOG_LOCAL5
    | `LOG_LOCAL6
    | `LOG_LOCAL7
    | `LOG_LPR
    | `LOG_MAIL
    | `LOG_NEWS
    | `LOG_NTP
    | `LOG_SECURITY
    | `LOG_SYSLOG
    | `LOG_USER
    | `LOG_UUCP ]
  and flag = [ `LOG_CONS | `LOG_NDELAY | `LOG_PERROR | `LOG_PID ]
  and level =
    [ `LOG_ALERT
    | `LOG_CRIT
    | `LOG_DEBUG
    | `LOG_EMERG
    | `LOG_ERR
    | `LOG_INFO
    | `LOG_NOTICE
    | `LOG_WARNING ]
  val set_logpath : string -> unit
  val set_socktype : Unix.socket_type -> unit
  val openlog : string -> Syslog.flag list -> Syslog.facility -> unit
  val syslog : ?fac:Syslog.facility -> Syslog.level -> string -> unit
  val closelog : unit -> unit
end