# `syslog` — Unix syslog library routines

This module provides an interface to the Unix `syslog` library routines. Refer to the Unix manual pages for a detailed description of the `syslog` facility.

Availability: Unix, not Emscripten, not WASI.

This module wraps the system `syslog` family of routines. A pure Python library that can speak to a syslog server is available in the `logging.handlers` module as `SysLogHandler`.

Modulen definierar följande funktioner:

syslog.syslog(message)
syslog.syslog(priority, message)

  Send the string message to the system logger. A trailing newline is added if necessary. Each message is tagged with a priority composed of a facility and a level. The optional priority argument, which defaults to `LOG_INFO`, determines the message priority. If the facility is not encoded in priority using logical-or (`LOG_INFO | LOG_USER`), the value given in the `openlog()` call is used.

  Om `openlog()` inte har anropats före anropet till `syslog()`, kommer `openlog()` att anropas utan argument.

  Utlöser en auditing event `syslog.syslog` med argumenten `priority`, `message`.

  Förändrat i version 3.2: I tidigare versioner anropades inte `openlog()` automatiskt om den inte anropades före anropet till `syslog()`, utan det var upp till syslog-implementationen att anropa `openlog()`.

syslog.openlog([ident[, logoption[, facility]]])

  Logging options of subsequent `syslog()` calls can be set by calling `openlog()`. `syslog()` will call `openlog()` with no arguments if the log is not currently open.

  Det valfria nyckelordsargumentet ident är en sträng som läggs till i varje meddelande och som standard är `sys.argv[0]` utan inledande sökvägskomponenter. Det valfria nyckelordsargumentet logoption (standard är 0) är ett bitfält - se nedan för möjliga värden att kombinera. Det valfria nyckelordsargumentet facility (standard är `LOG_USER`) anger standardfaciliteten för meddelanden som inte har en facilitet explicit kodad.

  Utlöser en auditing event `syslog.openlog` med argumenten `ident`, `logoption`, `facility`.

  Förändrat i version 3.2: I tidigare versioner var nyckelordsargument inte tillåtna och ident var ett krav.

syslog.closelog()

  Återställ värdena för syslog-modulen och anropa systembiblioteket `closelog()`.

  This causes the module to behave as it does when initially imported. For example, `openlog()` will be called on the first `syslog()` call (if `openlog()` hasn’t already been called), and ident and other `openlog()` parameters are reset to defaults.

  Utlöser en auditing event `syslog.closelog` utan argument.

syslog.setlogmask(maskpri)

  Ställer in prioritetsmasken till maskpri och returnerar det tidigare maskvärdet. Anrop till `syslog()` med en prioritetsnivå som inte anges i maskpri ignoreras. Standardinställningen är att logga alla prioriteringar. Funktionen `LOG_MASK(pri)` beräknar masken för den individuella prioriteten pri. Funktionen `LOG_UPTO(pri)` beräknar masken för alla prioriteringar upp till och med pri.

  Utlöser en auditing event `syslog.setlogmask` med argumentet `maskpri`.

Modulen definierar följande konstanter:

Priority levels (high to low):

  `LOG_EMERG`, `LOG_ALERT`, `LOG_CRIT`, `LOG_ERR`, `LOG_WARNING`, `LOG_NOTICE`, `LOG_INFO`, `LOG_DEBUG`.

Facilities:

  `LOG_KERN`, `LOG_USER`, `LOG_MAIL`, `LOG_DAEMON`, `LOG_AUTH`, `LOG_LPR`, `LOG_NEWS`, `LOG_UUCP`, `LOG_CRON`, `LOG_SYSLOG`, `LOG_LOCAL0` to `LOG_LOCAL7`, and, if defined in `<syslog.h>`, `LOG_AUTHPRIV`.

Log options:

  `LOG_PID`, `LOG_CONS`, `LOG_NDELAY`, and, if defined in `<syslog.h>`, `LOG_ODELAY`, `LOG_NOWAIT`, and `LOG_PERROR`.

## Exempel

### Enkelt exempel

En enkel uppsättning exempel:

    import syslog

    syslog.syslog('Processing started')
    if error:
        syslog.syslog(syslog.LOG_ERR, 'Processing started')

Ett exempel på inställning av några loggningsalternativ, dessa skulle inkludera process-ID i loggade meddelanden och skriva meddelandena till den destinationsfacilitet som används för e-postloggning:

    syslog.openlog(logoption=syslog.LOG_PID, facility=syslog.LOG_MAIL)
    syslog.syslog('E-mail processing initiated...')