Provided by: manpages-nl-dev_4.13-4_all bug

NAAM

       syslog - lees en/of wis kernel bericht-ring-buffer; zet "console_loglevel"

SAMENVATTING

       int syslog(int type, char *bufp, int len);
       /* No wrapper provided in glibc */

       /* Het glibc interface */
       #include <sys/klog.h>

       int klogctl(int type, char *bufw, int len);

BESCHRIJVING

       Opmerking:  Mogelijk  zoekt  u de C bibliotheek functie syslog(), die praat met syslogd(8), zie syslog(3)
       voor details.

       Deze pagina beschrijft de kernel syslog() systeem aanroep, die  wordt  gebruikt  om  de  kernel  printk()
       buffer te controleren, de glibc omwikkel functie voor de systeem aanroep wordt klogctl() genoemd.

   De kernel log buffer
       De kernel heeft een ring buffer met lengte LOG_BUF_LEN waarin berichten die opgegeven werden als argument
       aan  de  kernel  functie  printk()  bewaard  worden  (ongeacht  hun  log niveau). In vroegere kernels had
       LOG_BUF_LEN de waarde 4096; vanaf kernel 1.3.54 was dit 8192; vanaf kernel  2.1.113  was  het  16384;  en
       vanaf  kernel  2.4.23/2.6  is  deze  waarde de kernel configuratie optie (CONFIG_LOG_BUF_SHIFT, standaard
       waarde is afhankelijk van de architectuur).  Vanaf Linux 2.6.6, kan  de  grootte  worden  opgevraagd  met
       commando type 10 (zie hieronder).

   Commando's
       Het  type  argument bepaald de actie die deze functie uitvoert. De lijst hieronder bepaald de waarden van
       type. De symbolische namen worden gedefinieerd in de kernel broncode, maar worden niet geëxporteerd  naar
       de gebruiker; u zult ofwel getallen moeten gebruiken, of zelf de namen definiëren.

       SYSLOG_ACTION_CLOSE (0)
              Sluit het log. Momenteel een NOP.

       SYSLOG_ACTION_OPEN (1)
              Open het log. Momenteel een NOP.

       SYSLOG_ACTION_READ (2)
              Lees van de log. De aanroep wacht totdat de kernel log buffer niet leeg is, en leest vervolgens op
              zijn  meest len bytes in de buffer aangewezen door bufp. De aanroep retourneert het aantal gelezen
              bytes. Gelezen bytes van de log verdwijnen uit de log buffer: de  informatie  kan  slecht  eenmaal
              gelezen  worden.  Dit  is  de  functie  die uitgevoerd wordt door de kernel wanneer een gebruikers
              programma leest van proc/kmsg.

       SYSLOG_ACTION_READ_ALL (3)
              Lees alle resterende berichten van de ring buffer, en plaats ze in een buffer die aangewezen wordt
              door bufp. De aanroep leest de laatste len bytes van de log buffer (niet destructief), maar  leest
              niet  meer  dan  was  geschreven  in  de buffer sinds  het laatste "wis ring buffer" commando (zie
              commando 5 hieronder). De aanroep retourneert het aantal gelezen bytes.

       SYSLOG_ACTION_READ_CLEAR (4)
              Lees en wis alle resterende berichten in de ring buffer. De aanroep  doet  precies  hetzelfde  als
              voor een type van 3, maar voert ook het "wis ring buffer" commando uit.

       SYSLOG_ACTION_CLEAR (5)
              De  aanroep  voert  alleen  het  "wis  ring buffer" commando uit. De bufp en len argumenten worden
              genegeerd.

              Dit commando wist de ring buffer niet echt.  In plaats daarvan zet het een boekhoud variabele   in
              de   kernel   die   de  resultaten  bepaald  die  teruggegeven  worden  door  de  commando´s  3  3
              (SYSLOG_ACTION_READ_ALL)  en 4 (SYSLOG_ACTION_READ_CLEAR).  Dit  commando  heeft  geen  effect  op
              commando´s 2 (SYSLOG_ACTION_READ)  en 9 (SYSLOG_ACTION_SIZE_UNREAD).

       SYSLOG_ACTION_CONSOLE_OFF (6)
              Het  commando bewaart de huidige waarde van console_loglevel en zet vervolgens console_loglevel op
              minimum_console_loglevel, zodat er geen berichten  op  de  console  getoond  worden.   Voor  Linux
              2.6.32, zet dit commando eenvoudig console_loglevel op minimum_console_loglevel.  Zie de discussie
              over/proc/sys/kernel/printk, hieronder.

              De bufp en len argumenten worden genegeerd.

       SYSLOG_ACTION_CONSOLE_ON (7)
              Als  een  voorgaand SYSLOG_ACTION_CONSOLE_OFF commando wordt uitgevoerd, dan herstelt dit commando
              console_loglevel naar de waarde die werd bewaard door dat commando.  Voor Linux 2.6.32, zette  die
              commando  eenvoudig  weg  console_loglevel  op  default_console_loglevel.   Zie  de discussie over
              /proc/sys/kernel/printk, hieronder.

              De bufp en len argumenten worden genegeerd.

       SYSLOG_ACTION_CONSOLE_LEVEL (8)
              Deze aanroep zet  console_loglevel op de waarde gegeven in len,  dit dient  een  geheel  getal  te
              zijn  met een waarde tussen 1 and 8 (inclusief).  De kernel dwingt stilzwijgend een minimum waarde
              van minimum_console_loglevel al voor len.  Zie de   log  level  sectie  voor  details.   Het  bufp
              argument wordt genegeerd.

       SYSLOG_ACTION_SIZE_UNREAD (9) (sinds Linux 2.4.10)
              De  aanroep  retourneert het aantal bytes die momenteel beschikbaar zijn om te lezen van de kernel
              log buffer via  het  commando  2   (SYSLOG_ACTION_READ).   De   bufp  en   len  argumenten  worden
              genegeerd.

       SYSLOG_ACTION_SIZE_BUFFER (10) (sinds Linux 2.6.6)
              Het  commando  retourneert  de  totale grootte van de kernel log buffer. De bufp en len argumenten
              worden genegeerd.

       Alle commando´s behalve 3 en 10 vereisen privilege.  In de Linux kernel voor 2.6.37, commando types 3  en
       10  zijn  toegestaan  voor  niet-geprivilegieerde  processen;  vanaf Linux 2.6.37, worden deze commando´s
       alleen toegestaan aan niet-geprivilegieerde processen  als /proc/sys/kernel/dmesg_restrict  de  waarde  0
       heeft.  Voor  Linux 2.6.37, betekende "geprivilegieerd" dat de aanroeper de CAP_SYS_ADMIN capacitiet had.
       Vanaf Linux 2.6.37 betekende "geprivilegieerd" dat de aanroeper hetzij de  CAP_SYS_ADMIN  capaciteit  (nu
       verouderd voor dit doel) of de (nieuwe) CAP_SYSLOG capaciteit.

   /proc/sys/kernel/printk
       /proc/sys/kernel/printk  is  een  schrijfbaar  bestand  dat  vier  gehele getallen bevat   die het kernel
       printk() gedrag beïnvloed bij het tonen of loggen van fout meldingen.  De vier waarden zijn:

       console_loglevel
              Alleen berichten met een log niveau lager dan deze waarden  worden  getoond  in  de  terminal.  De
              standaard  waarde  voor  dit  veld  is  DEFAULT_CONSOLE_LOGLEVEL (7), maar wordt gezet op 4 als de
              kernel commando regel het woord "quiet" bevat, 10 als de kernel commando regel het  worod  "debug"
              bevat,  en  op 15 in het geval van een kernel fout (de 10 en 15 zijn een beetje gek, en equivalent
              aan 8).  De waarde van console_loglevel kan worden gezet  (op een waarde in het  bereik  van  1–8)
              met de syslog()  aanroep met een type van 8.

       default_message_loglevel
              Deze  waarde  zal  worden  gebruikt  als het log niveau voor printk() berichten die geen expliciet
              niveau hebben. Tot en met Linux 2.6.38, was de hard-gecodeerde standaard waarde voor  dit  veld  4
              (KERN_WARNING);  vanaf  Linux  2.6.39,  is  de  standaard  waarde  gedefinieerd  door  een  kernel
              configuratie optie CONFIG_DEFAULT_MESSAGE_LOGLEVEL, die standaard op 4 staat.

       minimum_console_loglevel
              De waarde in dit veld is de minimale waarde op welke console_loglevel kan worden ingesteld.

       default_console_loglevel
              Dit is de standaard waarde van console_loglevel.

   Het log niveau
       Elke printk() bericht heeft zijn eigen log niveau. Als dit niveau niet expliciet werd gespecificeerd  als
       onderdeel  van  het bericht, dan heeft dit de standaardwaarde default_message_loglevel.  De gebruikelijke
       betekenis van het log niveau is als volgt:
       Kernel constanten   Niveau waarde   Betekenis
       KERN_EMERG                0         Systeem is onbruikbaar
       KERN_ALERT                1         Actie moet onmiddellijk genomen worden
       KERN_CRIT                 2         Kritieke toestand
       KERN_ERR                  3         Fouttoestanden
       KERN_WARNING              4         Waarschuwings toestanden
       KERN_NOTICE               5         Normale maar belangwekkende toestanden
       KERN_INFO                 6         Informatie
       KERN_DEBUG                7         Debug-niveau berichten

       De printk kernel routine zal alleen een bericht op de console laten zien als het een log niveau heeft die
       kleiner is dan de waarde van console_loglevel.

EIND WAARDE

       Voor type gelijk aan 2,3 of 4 retourneert een succesvolle aanroep van syslog() het aantal gelezen  bytes.
       Voor  type  9,  retourneert  syslog() het aantal momentaan beschikbare bytes die van de kernel log buffer
       gelezen kunnen worden. Voor type 10, retourneert syslog() de totale grootte van  de  kernel  log  buffer.
       Voor andere waarden van type, wordt een 0 teruggegeven bij succes.

       In het geval van een fout wordt -1 teruggegeven, en errno wordt gezet om de fout te indiceren.

FOUTEN

       EINVAL Ongeldig argument (b.v. fout type; of voor type 2,3, of 4, buf is NULL, of len is kleiner dan nul;
              of voor type 8, het level is buiten het 1 tot 8 bereik.

       ENOSYS De  syslog()  systeem  aanroep  is  niet  beschikbaar,  omdat  de  kernel werd gecompileerd met de
              uitgeschakelde CONFIG_PRINTK kernel-configuratie optie.

       EPERM  Een poging werd gedaan om console_loglevel te veranderen of de kernel  berichten  ring  buffer  te
              wissen  door  een  proces  zonder  voldoende  privilege  (preciezer:  zonder  de  CAP_SYS_ADMIN of
              CAP_SYSLOG capaciteit).

       ERESTARTSYS
              Systeem aanroep werd onderbroken door een signaal; - niets werd gelezen. (Dit  kan  alleen  worden
              gezien gedurende een trace.)

VOLDOET AAN

       Deze  functie is Linux-specifiek, en zou niet gebruikt moeten worden in programma's die als overdraagbaar
       bedoeld zijn.

OPMERKINGEN

       Vanaf het begin merkten mensen op dat het ongelukkig was dat  een  systeem  aanroep  en  een  bibliotheek
       routine met dezelfde naam erg verschillende beesten zijn.

ZIE OOK

       dmesg(1), syslog(3), capabilities(7)

COLOFON

       Deze  pagina  is  onderdeel  van  release  5.10 van het Linux man-pages-project. Een beschrijving van het
       project,  informatie  over  het  melden  van  bugs  en  de  nieuwste  versie  van  deze  pagina  zijn  op
       https://www.kernel.org/doc/man-pages/ te vinden.

VERTALING

       De  Nederlandse  vertaling  van deze handleiding is geschreven door Jos Boersema <joshb@xs4all.nl>, Mario
       Blättermann <mario.blaettermann@gmail.com> en Luc Castermans <luc.castermans@gmail.com>

       Deze vertaling is vrije documentatie; lees  de  GNU General Public License Version 3  of  later  over  de
       Copyright-voorwaarden. Er is geen AANSPRAKELIJKHEID.

       Indien  U  fouten  in  de  vertaling  van deze handleiding zou vinden, stuur een e-mail naar debian-l10n-
       dutch@lists.debian.org.

Linux                                           13 augustus 2020                                       SYSLOG(2)