1s 8 jurnalul de bord restaurat. Este posibil să transferați jurnalul de înregistrare într-o bază de date separată?

Jurnalul 1C este un mecanism special al platformei 1C versiunile 8.2 și 8.3, care vă permite să înregistrați munca utilizatorilor cu sistemul. Folosind jurnalul, puteți afla cine și când au fost modificate obiectele din sistem: directoare, documente, registre etc. Mai jos vom analiza cum să lucrați cu acest mecanism, unde sunt stocate fișierele jurnal 1C, cum este configurat, cum să optimizați jurnalul și cum puteți șterge complet datele.

Să începem cu unde este stocat jurnalul de înregistrare în 1C. Pot exista două opțiuni - pentru modurile de operare fișier și client-server.

Baza de fișiere

Pentru bazele de date cu fișiere 1C, jurnalul se află în folderul cu baza de date. Locația fișierelor poate fi găsită la pornirea programului în meniul de selecție a bazei de date:

Calea este evidențiată cu roșu. Dacă urmam această cale, vom vedea următoarea imagine:

Dosarul 1Cv8Log este directorul care conține jurnalul.

  • Dacă plănuiești transfer de date de fișiereși doriți să salvați istoricul jurnalului, cu siguranță trebuie să copiați folderul 1Cv8Log în categoria noii baze de date 1C.
  • Dacă este nevoie ștergeți jurnalul de înregistrare 1C din baza de date de fișiere, doar ștergeți folderul 1Cv8Log.

Baza de date client-server 1C SQL

În modul client-server, fișierele istorice sunt de obicei stocate pe server în directorul:

C:\Program Files\1cv8\srvinfo\<Имя кластера сервера>\<Идентификатор базы на сервере>\1Cv8Log

Pentru a transfera jurnalul 1C pentru o bază de date SQL, precum și pentru una de fișier, mutați folderul în locația noii baze de date.

Este același lucru cu ștergerea - doar ștergeți acest folder.

Setări jurnal

Pentru a vedea setările disponibile, trebuie să accesați și să găsiți în meniul principal elementul „Administrare - Setări jurnal...”:

Obțineți 267 de lecții video pe 1C gratuit:

Următoarele setări de înregistrare sunt disponibile în interfața care se deschide:

Aici, în câmpul „Înregistrare în jurnalul evenimentelor”, puteți specifica detaliile datelor înregistrate. Opțiunea „Nu log” vă permite să dezactivați complet înregistrarea. Alte puncte sunt descifrate după cum urmează:

  1. Erori— toate defecțiunile și erorile posibile din sistem;
  2. Avertizări— mesaje importante de sistem care nu sunt erori;
  3. informație— toate informațiile despre datele de sistem modificabile;
  4. Note— mesaje neimportante (aproape întotdeauna le puteți dezactiva).

Optimizarea jurnalului de bord

Printre modalitățile de optimizare a vitezei de încărcare și de lucru cu jurnalul se numără următoarele metode:

Înregistrați mai puține evenimente. Dezactivarea înregistrării mesajelor care nu sunt importante pentru noi va reduce semnificativ cantitatea de informații și va crește viteza de lucru.

Împărțirea stocării jurnalelor pe perioade. Modificarea setării „Split log storage by period” la zi (pentru baze de date mari)/săptămână (pentru baze de date de dimensiuni medii) poate îmbunătăți semnificativ performanța jurnalului. Fișierele jurnal vor fi împărțite în folderul 1Cv8Log în părți specificate în setări și vor avea un formular similar cu 20140905000000.lgp, care arată data și ora la care a fost creat jurnalul.

Reducerea jurnalului oferă, de asemenea, o optimizare semnificativă în lucrul cu jurnalul. Pentru a face acest lucru, faceți clic pe butonul „Reducere” din setări. Selectați perioada la care doriți să reduceți jurnalul:

Când utilizați această metodă, este recomandat să scrieți evenimentele șterse într-un fișier separat. Acest lucru vă va permite să restabiliți oricând istoricul care a fost șters din jurnalul bazei de date 1C.

Iar ultima și cea mai eficientă metodă de optimizare este transferarea jurnalului de înregistrare în așa-numitul „Format nou”. Este disponibil începând cu versiunea 8.3.5.1068 a platformei 1C. Acest format pentru stocarea jurnalului de înregistrare nu este într-un fișier text, ci într-o bază de date separată pe SQLite DBMS.

Pentru a trece la un nou format, convertiți revista făcând clic pe butonul „Format nou”:

Fiți atenți, conversia inversă la vechiul format imposibil.

În sistemul 1C există și un sistem de analiză a informațiilor tehnice.

Jurnalul de înregistrare în 1C 8.3 este foarte util prin faptul că afișează evenimentele care au avut loc în baza de informații, indicând ora, numele computerului și numele de utilizator și link-uri către datele modificate. Când utilizatorii sunt autentificați, sunt create și intrări în jurnal care indică modul în care au intrat în program. Acest mecanism vă permite să răspundeți la una dintre întrebările frecvente - cine a făcut ultima dată modificări la un anumit obiect.

Unde pot găsi jurnalul de bord în 1C 8.3? Prin meniul „Toate funcțiile” - „Standard” sau, în configurațiile tipice 1C, în meniul „Administrare” - „Suport și întreținere”.

Jurnalul de bord este configurat în modul configurator. În meniul „Administrare”, selectați „Setări jurnal”.

Aici configurați evenimentele care vor fi afișate în jurnal.

Selectarea primului element de setare vă permite să nu păstrați deloc un jurnal. Setările rămase sunt aranjate în ordine crescătoare a importanței. Dacă există un număr mare de utilizatori, nu este recomandat să înregistrați comentarii pentru a nu înfunda baza de date.

La crearea unei noi baze de informații, este setat modul implicit pentru înregistrarea tuturor evenimentelor.

Vizualizați și căutați înregistrări

Când deschideți jurnalul în sine, la prima vedere poate părea că există o mulțime de informații și este pur și simplu nerealist să le găsiți. De fapt, acest lucru nu este adevărat.

În mod implicit, în jurnal sunt afișate 200 de intrări. Afișarea unui număr mare de intrări poate afecta negativ performanța programului dvs. sau poate cauza pur și simplu înghețarea acestuia.

În formularul de lista de jurnal de înregistrare, puteți seta selecția și utilizați căutarea. Căutarea se aplică numai înregistrărilor care sunt deja afișate (în acest caz, ultimele 200 de evenimente). Selecția se aplică tuturor înregistrărilor.

Căutarea se efectuează folosind datele afișate în secțiunea tabelară, așa că atunci când o utilizați trebuie doar să specificați coloana și datele pe care doriți să le găsiți.

Selecția vă permite să selectați date după anumiți utilizatori, nume de computer, evenimente etc. Aveți, de asemenea, posibilitatea de a afișa intrările de jurnal numai pentru anumite metadate, date (un link către obiectul dorit, de exemplu, un anumit document) și alte setări sunt indicate.

Acest exemplu arată setările jurnalului pentru selectarea tuturor evenimentelor utilizatorului „Admin” începând cu 20.06.2017.

Unde este stocat fișierul jurnal 1cv8.lgd?

Locația stocării fizice a jurnalului depinde direct de dacă baza de date de fișiere sau clientul este o bază de date server.

Baza de fișiere

Cu acest mod de plasare, jurnalul de înregistrare este localizat în folderul cu baza de date în sine. Puteți afla locația sa fie din lista de baze de date, fie din ajutorul „Despre program”.

Dacă mergeți la această adresă, veți găsi un folder numit „1Cv8Log”. Aici se află datele de jurnal din fișierul 1Cv8.lgd.

Dacă trebuie să transferați baza de date dintr-un loc în altul, puteți copia și acest director, apoi datele de jurnal vor fi transferate împreună cu baza de date.

Când ștergeți acest director, jurnalul va fi șters.

Baza client-server

În acest mod, totul este la fel ca în cel precedent, doar datele de jurnal 1C sunt stocate pe server. Cel mai adesea, locația sa este următoarea:

  • C:\Program Files\1cv8\srvinfo\<место расположения информационной базы>\1Cv8Log

Optimizare

Jurnalul poate fi optimizat dacă este necesar, mai ales când în baza de date au loc un număr mare de evenimente.

O modalitate este de a configura înregistrarea doar a anumitor evenimente, așa cum sa discutat mai sus. De exemplu, nu are rost să urmăriți notele dacă pur și simplu nu aveți nevoie de ele.

În versiunile mai vechi ale platformei, împărțirea jurnalului în funcție de perioadă era disponibilă în setările jurnalului. Întregul jurnal poate fi împărțit în fișiere separate cu o frecvență specificată (zi, lună, an etc.).

Începând cu versiunea 1C a platformei 8.3.5.1068, jurnalul este stocat într-un fișier de bază de date sqlite cu extensia *.lgd, iar această setare a devenit indisponibilă. Această metodă de depozitare a jurnalului este mult mai productivă decât cea veche.

Cum să reduceți sau să ștergeți jurnalul de înregistrare în 1C

Dacă trebuie să ștergeți parțial sau complet intrările de jurnal, în fereastra de setări, faceți clic pe butonul „Reducere”. În fereastra care apare, specificați data până la care trebuie șterse toate înregistrările. De asemenea, puteți salva intrările șterse într-un fișier pentru orice eventualitate.

M-a interesat formatul fișierelor jurnal, dar căutarea pe Internet nu a dat niciun rezultat. A trebuit să-l studiez eu. Așa s-a născut procesarea - Analiza și editarea fișierelor jurnal 8.1/8.2 - ELF/LOG/LGF/LGP. După cum am promis, am încercat să scriu un articol cu ​​drepturi depline despre formatul fișierelor jurnal 1C 8.

În 1C 8, jurnalul de înregistrare este stocat în fișiere text, care se află în subdirectorul 1Cv8Log. Pentru client-server, căutați undeva în „C:\Program Files\1cv82\srvinfo\reg_1541\\1Cv8Log\”.

De obicei, jurnalul 1C 8 constă dintr-un fișier de descriere (ELF în 8.1 / LGF în 8.2) și unul sau mai multe fișiere de date (LOG în 8.1 / LGP în 8.2). Există și așa-numitele arhive de jurnal - în acest caz, descrierile și datele sunt localizate într-un fișier secvenţial, mai întâi descrieri, apoi date, cu extensia fiind aceeași cu fișierul de date.

Prima linie a fișierului jurnal conține un marcator
„1CV8LOG_” pentru 8.1 și „1CV8LOG(ver 2.0)” pentru 8.2.

A doua linie conține GUID-ul.

Pentru fișierul de date jurnal, este scrisă o a treia linie goală suplimentară.

Atunci când analizăm jurnalul, ne confruntăm cu problema separării înregistrărilor unele de altele - la urma urmei, acestea au o lungime variabilă și pot fi împărțite într-un număr diferit de linii, care se obține datorită următoarelor reguli care adaugă caractere suplimentare de linie nouă. (Simboluri.PS):

1) Acolada de deschidere "( "din fișier este întotdeauna precedată de un caracter de linie nouă;

2) Acoladele de închidere „)” nu pot fi consecutive - acestea sunt întotdeauna separate printr-un caracter nou linie;

3) Caracterul de nouă linie poate apărea între ghilimele.

Astfel, puteți separa o înregistrare pe baza următoarelor criterii:

1) Primul caracter este acolada de deschidere „(”;

2) Numărul de acolade deschise „(” este egal cu numărul de acolade de închidere „)”;

3) Ultimul caracter este acolada de închidere „)”;

4) De asemenea, o intrare corectă va avea întotdeauna un număr par de ghilimele.

Structura intrărilor din fișierul de descriere din 8.1 este foarte diferită de 8.2.

Când analizăm fișierul de descriere 8.1 conform regulilor de mai sus, obținem o singură intrare, care va consta din elementul „Legendă” și intrări imbricate. Structura înregistrărilor imbricate este aceeași - un antet și o înregistrare imbricată. Antetul poate lua următoarele valori: „Utilizatori” - GUID-uri utilizator, „UserNames” - nume de utilizator, „Gazde” - computere, „Aplicații” - aplicații, „Evenimente” - evenimente, „MDID” - GUID-uri metadate, „MDCodes” - nume metadate , „SrvHosts” - servere, „MainPorts” - porturi principale, „SyncPorts” - porturi auxiliare. Înregistrările imbricate sunt în esență matrice. Primul element este dimensiunea matricei, urmată de valorile reale. Separatorul este o virgulă.

Când analizăm fișierul de descriere 8.2, vom vedea o imagine diferită. Fișierul conține multe intrări care variază în dimensiune, de obicei, de la trei elemente la patru, dacă trebuie să specificați un GUID - pentru utilizatori și metadate.

Formatul de înregistrare este simplu - primul element este codul matricei, al doilea este valoarea, al treilea este numărul din matrice. În cazul a patru intrări, între primul și al doilea element apare un GUID.

Au fost descoperite următoarele coduri matrice:

1 - utilizatori;

2 - calculatoare;

3 - aplicații;

4 - evenimente;

5 - metadate;

6 - servere;

7 - porturi principale;

8 - porturi auxiliare.

Există, de asemenea, codurile neidentificate 11, 12 și 13

Astfel, din fișierele de descriere obținem cărțile de referință necesare care vor fi folosite în fișierele de date.

Structura înregistrărilor fișierelor de date 8.1 diferă de 8.2 esențial doar prin numărul de elemente. În 8.1, înregistrarea constă strict din 16 elemente, iar în 8.2 numărul de elemente este variabil și poate fi de la 19 bucăți la, în principiu, orice număr.

1) Data și ora în formatul „aaaaMMddHHmmss”, ușor convertite într-o dată de către funcția Date();

2) Starea tranzacției - poate lua patru valori: „N” - „Absent”, „U” - „Fixed”, „R” - „Nefinalizat” și „C” - „Anulat”;

3) O tranzacție într-un format de înregistrare de două elemente convertite într-un număr hexazecimal - primul este numărul de secunde de la 01/01/0001 00:00:00 înmulțit cu 10000, al doilea este numărul tranzacției;

4) Utilizator - este indicat numărul din matricea de utilizatori;

5) Calculator - este indicat numărul din matricea calculatoarelor;

6) Aplicație - este indicat numărul din matricea aplicației;

7) Conexiune - numărul conexiunii;

8) Eveniment - este indicat numărul din tabloul de evenimente;

9) Importanță - poate lua patru valori - „I” - „Informații”, „E” - „Erori”,

"W" - "Avertismente" și "N" - "Note";

10) Comentariu - orice text între ghilimele;

11) Metadate - este indicat numărul din matricea de metadate;

12) Datele sunt cel mai complicat element, care conțin o înregistrare imbricată;

13) Prezentarea datelor - text între ghilimele;

14) Server - este indicat numărul din matricea de servere;

15) Port principal - indicați numărul din matricea de porturi principale;

16) Port auxiliar - este indicat numărul din matricea de porturi auxiliare;

17) Sesiune - numărul sesiunii;

18) Numărul de metadate suplimentare, ale căror numere vor fi enumerate în următoarele elemente ale înregistrării. Este al 18-lea element care determină lungimea înregistrării, deoarece atunci vor fi atâtea elemente câte sunt indicate aici + un ultim, al cărui scop nu a fost încă determinat și de obicei există „(0)”. Poate că acesta este doar un marcator pentru sfârșitul înregistrării. Există, de asemenea, ideea că (0) arată ca o matrice goală.

Acum luați în considerare înregistrarea imbricată a elementului 12 (Date), care poate lua următoarele valori:

1) (“U”) - Nedefinit - poate fi convertit prin ValueFromStringInt();

2) (“S”,”String”) - String - poate fi convertit prin ValueFromStringInt();

4) ("P",(6,("S","String1"),("S","String2"))) - ceva de genul o matrice, dar nu este încă clar ce înseamnă 6 - am văzut este în locul său până acum doar 1, 2 și 6. Poate că acestea sunt tipuri diferite - matrice, structură etc.

Astfel, în general, formatul de jurnal atât al 1C 8.1, cât și al 1C 8.2 a fost dezasamblat. Există unele neînțelegeri, care sper că se vor lămuri în timp, dar chiar și ele nu interferează cu procesarea fișierelor de analiză - - Analiza și editarea fișierelor jurnal 8.1/8.2 - ELF/LOG/LGF/LGP

Ulterior, a apărut o publicație destul de interesantă - în care autorul analizează direct fișierele jurnal și scrie că a analizat el însuși formatul jurnalului, cu mult înainte de publicația curentă, dar, din păcate, nu a împărtășit încă comunității informațiile suplimentare găsite despre format. .

Pe serverul 1C, folderul crește în timp în timp
reg_1541, care conține jurnalele 1C. Acest folder se află în director C:\Program Files\1cv82\srvinfo.Și, ca urmare, poate apărea o problemă cu spațiul liber pe hard diskul sistemului. Pentru a evita creșterea folderelor srvinfo Este necesar să ștergeți periodic jurnalul 1C.

Eliminarea jurnalelor neutilizate din folderul Srvinfo

Jurnalul de înregistrare înregistrează toate modificările la obiectele bazei de date 1C - documente, directoare, registre etc.

Fiecare bază de date 1C are propriul director de stocare a jurnalelor și arată astfel:

C:\Program Files\1cv8\srvinfo\\\1Cv8Log

Pliant<Имя кластера сервера>implicit este numit reg_1541.

După ștergerea bazei de date de pe serverul 1C, folderul jurnal nu este șters din Srvinfo. Prin urmare, din numeroasele foldere din
Srvinfo poate conține și cele care nu au fost folosite de mult timp și pur și simplu ocupă spațiu pe hard disk.

Puteți găsi aceste foldere deschizând fișierul, care se află și el reg_1541.

Copie<Идентификатор базы на сервере>din folderul Srvinfo și caută în fișierul 1CV8Clst.lst. Dacă identificatorul nu este găsit în fișier, atunci folderul poate fi șters.


În directorul Srvinfo există un folder cu numele vizualizării snccntx+<Идентификатор базы на сервере> . Acest folder conține date de sesiune și este mai bine să nu-l ștergeți decât dacă este necesar. nu ocupa mult spatiu.

Configurarea și ștergerea jurnalului 1C

Lansăm 1C în modul configurator și mergem la meniul „Administrare/Setări jurnal”.

În setările jurnalului, puteți selecta ce evenimente vor fi înregistrate:

Erori - informații despre defecțiuni
Avertismentele sunt notificări importante, nu erori.
Informații - toate modificările bazei de date
Note - toate celelalte notificări

Pentru a șterge jurnalul de înregistrare, faceți clic pe butonul „Reducere”.

Aici puteți vedea intervalul de date pentru care sunt stocate datele.

În câmpul „Șterge evenimente până la:”, selectați data înainte de care vom șterge jurnalul de înregistrare.

Automatizarea procesului de ștergere a jurnalelor

Automatizarea procesului prin linia de comandă Windows arată astfel:

„\1cv8.exe” CONFIG /Out /ReduceEventLogSize -saveAs

— șir de conexiune la baza de informații. Deoarece Vorbim despre versiunea de server, această linie va arăta ca „/S /N /P”. Utilizatorul trebuie să aibă drepturi de administrare.

— calea către fișierul în care vor fi salvate mesajele de sistem la efectuarea acestei operațiuni.

— data până la care jurnalul de înregistrare va fi scurtat în formatul aaaa-ll-zz

— cale către un fișier în format *.elf, care poate fi accesat dacă este necesar pentru a efectua investigații asupra operațiunilor de lungă durată cu baza de informații.

Operația trebuie efectuată atunci când nu există conexiuni active la baza de date 1C.

Exemplu de script PowerShell

# # backup și micșorare jurnalele 1c # param ($1cexe = "C:\Program Files (x86)\1cv82\8.2.15.319\bin\1cv8.exe", $1cbase = "srvrname\ibname", $1cuser = "nume utilizator ", $1cupassword = "parolă", $1coperlog = "s:\logs\1cshrink.txt", $1cdaysoflogstore = 7, #[data până la care se vor șterge jurnalele] (get-date).Date.AddDays(-$1cdaysoflogstore ) .ToString("yyyyMMdd") $1clogsarchive = "s:\backup\6months\", #[calea către fișierul jurnal *.elf salvat în altă parte] $1clogfilename = $env:COMPUTERNAME.ToLower() + "-1clog- " + ($1cbase.split("\")) + "-" + (get-date).Date.ToString("yyyyMMdd") + ".elf") $1clog = $1clogsarchive + $1clogfilename cmd /c " `"`"$1cexe`" CONFIG `/s$1cbase `/N`"$1cuser`" `/P`"$1cupassword`" `/Out$1coperlog `/ReduceEventLogSize $((get-date).Date. AddDays(-$1cdaysoflogstore).ToString("aaaa-LL-zz")) -saveAs`"$1clog`"`""

Atenţie! Datele pentru conectarea la baza de date 1C sunt anonimizate. Trebuie să-l înlocuiți cu al dumneavoastră.

Transferarea jurnalului pe o altă unitate

Pentru a evita umplerea discului de sistem cu fișiere jurnal, folderul 1C SRVINFO poate fi transferat pe o altă unitate. Acest lucru se poate face prin modificarea parametrilor de pornire ai serviciului „1C:Enterprise 8.3 Server Agent” din registrul Windows.

În editorul de registry, accesați ramura HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\1C:Enterprise 8.2 Server Agent iar în parametru ImagePath modificați valoarea „1C:Enterprise 8.3 Server Agent” „C:\Program Files (x86)\1cv8\8.3.10.2667\bin\ragent.exe” -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d „C:\Program Files (x86)\1cv8\srvinfo”.
În loc de „C:\Program Files (x86)\1cv8\srvinfo” indicăm noul director pentru locația jurnalului.

editarea începutului serviciului „1C:Enterprise 8.3 Server Agent” în registrul Windows

Articolul folosit