Scroll to navigation

LOGGER(1) Comenzi utilizator LOGGER(1)

NUME

logger - introduce mesaje în jurnalul sistemului

REZUMAT

logger [opțiuni] mesaj

DESCRIERE

logger face înregistrări în jurnalul sistemului.

Atunci când este prezent argumentul opțional mesaj, acesta este scris în jurnal. Dacă acesta nu este prezent și nici opțiunea -f nu este furnizată, atunci se înregistrează intrarea standard.

OPȚIUNI

-d, --udp

Utilizează numai datagrame (UDP). În mod implicit, conexiunea este încercată în portul syslog definit în /etc/services, care este adesea 514.

A se vedea, de asemenea, --server și --socket pentru a specifica unde să se conecteze.

-e, --skip-empty

Ignoră liniile goale la procesarea fișierelor. O linie goală este definită ca fiind o linie fără niciun caracter. Astfel, o linie compusă numai din spații albe NU este considerată goală. Rețineți că atunci când este specificată opțiunea --prio-prefix, prioritatea nu face parte din linie. Astfel, o linie goală în acest mod este o linie care nu are niciun caracter după prefixul de prioritate (de exemplu, <13>).

-f, --file fișier

Înregistrează conținutul fișierului filșier specificat. Această opțiune nu poate fi combinată cu un mesaj din linia de comandă.

-i

Înregistrează PID-ul procesului logger la fiecare linie.

--id[=id]

Înregistrează PID-ul procesului logger la fiecare linie. Atunci când se specifică argumentul opțional id, acesta este utilizat în locul PID-ului comenzii logger. Utilizarea lui --id=$$ (PPID) este recomandată în scripturile care trimit mai multe mesaje.

Rețineți că infrastructura de jurnalizare a sistemului (de exemplu, systemd atunci când ascultă pe /dev/log) poate urma acreditările locale ale soclului pentru a suprascrie PID-ul specificat în mesaj. logger(1) este capabil să definească aceste acreditări de soclu la id-ul dat, dar numai dacă aveți permisiuni de root și dacă există un proces cu PID-ul specificat, altfel acreditările de soclu nu sunt modificate și problema este ignorată în tăcere.

--journald[=fișier]

Scrieți o intrare în jurnalul systemd. Intrarea este citită din fișierul dat, atunci când este specificat, în caz contrar de la intrarea standard. Fiecare linie trebuie să înceapă cu un câmp acceptat de journald; a se vedea systemd.journal-fields(7) pentru detalii. Utilizarea unui câmp MESSAGE_ID este, în general, o idee bună, deoarece facilitează găsirea intrărilor. Exemple:

logger --journald <<end
MESSAGE_ID=67feb6ffbaf24c5cbec13c008dd72309
MESSAGE=Câinii latră, caravana trece.
CÂINII=latră
CARAVANA=trece
end

logger --journald=intrare.txt

Observați că --journald va ignora valorile altor opțiuni, cum ar fi prioritatea. Dacă este nevoie de prioritate, aceasta trebuie să fie în cadrul datelor de intrare și să se utilizeze câmpul PRIORITY. Simpla execuție a journalctl(1) va afișa câmpul MESSAGE. Utilizați journalctl --output json-pretty pentru a vedea restul câmpurilor.

Pentru a include linii noi în MESSAGE, specificați MESSAGE de mai multe ori. Acest lucru este tratat ca un caz special, alte câmpuri vor fi stocate ca o matrice în jurnal dacă apar de mai multe ori.

--msgid id-mesaj

Definește câmpul MSGID RFC 5424 <https://tools.ietf.org/html/rfc5424>. Rețineți că nu este permis caracterul spațiu în interiorul lui msgid. Această opțiune este utilizată numai dacă este specificat și --rfc5424; în caz contrar, este ignorată în mod silențios.

-n, --server server

Scrie pe serverul syslog de la distanță specificat în loc să scrie pe soclul de jurnal de sistem. Cu excepția cazului în care se specifică --udp sau --tcp, logger va încerca mai întâi să folosească UDP, dar dacă acest lucru eșuează, se încearcă o conexiune TCP.

--no-act

Determină efectuarea tuturor operațiilor, cu excepția scrierii mesajului de jurnal în jurnalul sistemului și a eliminării conexiunii cu jurnalul. Această opțiune poate fi utilizată împreună cu --stderr în scopuri de testare.

--octet-count

Utilizează metoda de încadrare RFC 6587 <https://tools.ietf.org/html/rfc6587> de numărare a octeților pentru trimiterea mesajelor. Atunci când această opțiune nu este utilizată, valoarea implicită este că nu există încadrare pentru UDP, iar pentru TCP, se utilizează încadrarea netransparentă RFC6587 (cunoscută și sub numele de „octet stuffing”).

-P, --port port

Utilizează portul specificat. Atunci când această opțiune nu este specificată, portul este implicit syslog pentru conexiunile udp și syslog-conn pentru conexiunile tcp.

-p, --priority prioritatea

Introduce mesajul în jurnal cu prioritatea specificată. Prioritatea poate fi specificată numeric sau ca o pereche facilitate.nivel. De exemplu, -p local3.info înregistrează mesajul ca fiind informativ în facilitatea local3. Valoarea implicită este user.notice.

--prio-prefix

Caută un prefix syslog pe fiecare linie citită de la intrarea standard. Acest prefix este un număr zecimal între paranteze unghiulare care codifică atât facilitatea, cât și nivelul. Numărul este construit prin înmulțirea facilității cu 8 și apoi prin adăugarea nivelului. De exemplu, local0.info, care înseamnă facilitate=16 și nivel=6, devine <134>.

Dacă prefixul nu conține nicio facilitate, facilitatea este cea specificată în mod implicit de opțiunea -p. În mod similar, dacă nu este furnizat niciun prefix, linia este înregistrată folosind prioritatea dată cu -p.

Această opțiune nu afectează un mesaj din linia de comandă.

--rfc3164

Utilizează protocolul BSD syslog RFC 3164 <https://tools.ietf.org/html/rfc3164> BSD pentru a trimite mesaje către un server la distanță.

--rfc5424[=fără]

Utilizează protocolul syslog RFC 5424 <https://tools.ietf.org/html/rfc5424> pentru a trimite mesaje către un server la distanță. Argumentul opțional fără poate fi o listă separată prin virgulă cu următoarele valori: notq, notime, nohost.

Valoarea notq suprimă datele structurate de calitate temporală din mesajul transmis. Informațiile referitoare la calitatea timpului arată dacă ceasul local a fost sincronizat plus numărul maxim de microsecunde cu care marcajul temporal poate fi deplasat. Calitatea timpului este, de asemenea, suprimată automat atunci când se specifică --sd-id timeQuality.

Valoarea notime (care implică notq) suprimă marca de timp completă a expeditorului care este în format ISO-8601, inclusiv microsecundele și fusul orar.

Valoarea nohost suprimă informațiile gethostname(2) din antetul mesajului.

Protocolul RFC 5424 este protocolul implicit pentru logger începând cu versiunea 2.26.

-s, --stderr

Afișează mesajul la iețirea de eroare standard, precum și în jurnalul sistemului.

--sd-id name[@cifre]

Specifies a structured data element ID for an RFC 5424 message header. The option has to be used before --sd-param to introduce a new element. The number of structured data elements is unlimited. The ID (name plus possibly @digits) is case-sensitive and uniquely identifies the type and purpose of the element. The same ID must not exist more than once in a message. The @digits part is required for user-defined non-standardized IDs.

logger generează în prezent numai elementul standardizat timeQuality. RFC 5424 descrie, de asemenea, elementele origin (cu parametrii ip, enterpriseId, software și swVersion) și meta (cu parametrii sequenceId, sysUpTime și language). ID-urile acestor elemente pot fi specificate fără sufixul @cifre.

--sd-param name=valoare

Specifică un parametru de element de date structurat, o pereche de nume și valoare. Opțiunea trebuie utilizată după --sd-id și poate fi specificată de mai multe ori pentru același element. Rețineți că ghilimelele din jurul lui valoare sunt obligatorii și trebuie să fie eliminate din linia de comandă.


logger --rfc5424 --sd-id zoo@123 \
--sd-param tigrul="flămând" \
--sd-param zebra="aleargă" \
--sd-id manager@123 \
--sd-param onMeeting="yes" \
"acesta este mesajul"

produce:

<13>1 2015-10-01T14:07:59.168662+02:00 ws kzak - - [timeQuality tzKnown="1" isSynced="1" syncAccuracy="218616"][zoo@123 tigrul="flămând" zebra="aleargă"][manager@123 onMeeting="yes"] acesta este mesajul

-S, --size dimensiunea

Stabilește dimensiunea maximă permisă a mesajului la dimensiunea. Valoarea implicită este de 1KiB caractere, care este limita utilizată în mod tradițional și specificată în RFC 3164. Odată cu RFC 5424, această limită a devenit flexibilă. O presupunere bună este că receptorii RFC 5424 pot procesa cel puțin mesaje de 4KiB.

Majoritatea receptoarelor acceptă mesaje mai mari de 1KiB prin orice tip de protocol syslog. Ca atare, opțiunea --size afectează logger în toate cazurile (nu numai atunci când a fost utilizată opțiunea --rfc5424).

Notă: limita de dimensiune a mesajului limitează dimensiunea totală a mesajului, inclusiv antetul syslog. Dimensiunile antetului variază în funcție de opțiunile selectate și de lungimea numelui de gazdă. Ca regulă generală, de obicei, antetele nu depășesc 50-80 de caractere. Atunci când se selectează o dimensiune maximă a mesajului, este important să se asigure că și receptorul acceptă dimensiunea maximă, altfel mesajele pot fi trunchiate. Din nou, ca regulă generală, o dimensiune a mesajului de doi până la patru Kio ar trebui să fie în general OK, în timp ce orice dimensiune mai mare trebuie verificată pentru a se asigura că funcționează.

--socket-errors[=mod]

Afișează erorile legate de conexiunile de soclu Unix. mod poate fi o valoare de off, on sau auto. Atunci când modul este auto, atunci logger va detecta dacă procesul de init este systemd(1), iar dacă se face această presupunere /dev/log poate fi utilizat de la început la pornire. Alte sisteme de init lipsite de /dev/log nu vor cauza erori care sunt identice cu mesageria care utilizează apelul de sistem openlog(3). logger(1) înainte de versiunea 2.26 folosea openlog(3) și, prin urmare, nu putea detecta pierderea mesajelor trimise la socluri Unix.

Modul implicit este auto. Atunci când erorile nu sunt activate, mesajele pierdute nu sunt comunicate și vor avea ca rezultat o stare de ieșire cu succes a invocării logger(1).

-T, --tcp

Utilizează numai fluxul (TCP). În mod implicit, conexiunea este încercată la portul syslog-conn definit în /etc/services, care este adesea 601.

A se vedea, de asemenea, --server și --socket pentru a specifica unde să se conecteze.

-t, --tag marcaj

Marchează fiecare linie care urmează să fie înregistrată cu marcajul specificat. Marcajul implicit este numele utilizatorului conectat la terminal (sau un nume de utilizator bazat pe ID-ul efectiv al utilizatorului).

-u, --socket soclu

Scrie pe soclul specificat în loc să scrie pe soclul de jurnal de sistem.

--

Încheie lista de argumente. Acest lucru permite ca mesajul să înceapă cu o cratimă (-).

-h, --help

Afișează acest mesaj de ajutor și iese.

-V, --version

Afișează informațiile despre versiune și iese.

STARE DE IEȘIRE

Aplicația logger iese cu 0 în caz de succes și >0 dacă apare o eroare.

FACILITĂȚI ȘI NIVELE

Numele de facilități valide sunt:

auth +
authpriv pentru informații de securitate de natură sensibilă +
cron

daemon +
ftp +
kern nu poate fi generat de un proces din spațiul utilizatorului, este convertit automat în user

lpr
mail
news
syslog
user
uucp
local0
to
local7
security sinonim depreciat pentru auth

Numele de nivele valide sunt:

emerg +
alert +
crit +
err +
warning +
notice +
info +
debug +
panic sinonim depreciat pentru emerg +
error sinonim depreciat pentru err +
warn sinonim depreciat pentru warning

Pentru ordinea de prioritate și scopurile prevăzute pentru aceste facilități și nivele, a se vedea syslog(3).

ÎN CONFORMITATE CU

Se așteaptă ca instrumentul logger să fie compatibil cu IEEE Std 1003.2 ("POSIX.2").

EXEMPLE

logger Sistemul a fost repornit

logger -p local0.notice -t HOSTIDM -f /dev/idmc

logger -n loghost.exemplu.com Sistemul a fost repornit

AUTORI

Comanda logger a fost scrisă inițial de Universitatea din California în 1983-1993 și rescrisă ulterior de Karel Zak <kzak@redhat.com>, Rainer Gerhards <rgerhards@adiscon.com> și Sami Kerola <kerolasa@iki.fi>.

CONSULTAȚI ȘI

journalctl(1), syslog(3), systemd.journal-fields(7)

RAPORTAREA ERORILOR

Pentru rapoarte de eroare, folosiți sistemul de urmărire al erorilor la <https://github.com/util-linux/util-linux/issues>.

DISPONIBILITATE

Comanda logger face parte din pachetul util-linux care poate fi descărcat de la Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/>.

2025-01-09 util-linux 2.40.3