Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

truncate() u kontra smeru

[es] :: Linux :: truncate() u kontra smeru

[ Pregleda: 2748 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

karas

Član broj: 5574
Poruke: 482
*.routotelecom.com.



+1 Profil

icon truncate() u kontra smeru07.11.2006. u 14:45 - pre 212 meseci
Zna li neko za program ili skript koji skraćuje tekstualni fajl sa početka (truncate() u kontra smeru, tj. omogućava da se obrišu sve linije osim zadatih N poslednjih). Fajl koji se skraćuje je log fajl što znači da se u njega sve vreme upisuje, pa program treba da vodi računa o tome da zabrani upisivanje dok se radi skraćivanje. Perl skripte koje sam video koriste system() što bih takođe da izbegnem. Izvorni kod programa se podrazumeva, po mogućstvu u C-u.
Sveti Avgustin: "Dobar hrišćanin treba da se kloni matematičara i svih onih koji daju lažna proročanstva. Postoji opasnost da su matematičari već sklopili pakt sa Đavolom, da pomrače čovekov um i da ga okuju okovima pakla."
 
Odgovor na temu

random
Vladimir Vrzić
Beograd

Član broj: 85
Poruke: 3866
*.eunet.yu.

Sajt: www.last.fm/user/vrza


+4 Profil

icon Re: truncate() u kontra smeru07.11.2006. u 22:54 - pre 212 meseci
Probaj sa logrotate, dolazi uz skoro svaku Linux distribuciju.
int rand(void);

Those who do not understand Unix are condemned to reinvent it, poorly.

Upali lampicu — koristi Jabber!
 
Odgovor na temu

karas

Član broj: 5574
Poruke: 482
*.routotelecom.com.



+1 Profil

icon Re: truncate() u kontra smeru08.11.2006. u 11:06 - pre 212 meseci
logrotate skraćuje fajl na nulu, ja bih da mu zadam koliko poslednjih linija loga da ostavi. Dalje, u manualu piše da između kopiranja i skraćivanja fajla može doći do gubljenja podataka u logu, što bih da izbegnem.

Sveti Avgustin: "Dobar hrišćanin treba da se kloni matematičara i svih onih koji daju lažna proročanstva. Postoji opasnost da su matematičari već sklopili pakt sa Đavolom, da pomrače čovekov um i da ga okuju okovima pakla."
 
Odgovor na temu

chupcko
Negde
Beograd

Član broj: 5560
Poruke: 1141

Sajt: www.google.com


+63 Profil

icon Re: truncate() u kontra smeru08.11.2006. u 12:24 - pre 212 meseci
Pa sta god radio uvek ima problema :)))

E sada prvo pitanje da li program koji loguje otvori jednom na pocetku file ili za svaki upis otvara file.

Zasto je ovo bitno, jer u prvom slucaju mozes da se igras sa rename (i dalje upisuje u taj file, jer je vec otvoren), sada mozes da se igras sa gomilom stvari.

A u drugom slucaju nista ti ne pomaze, jer nikada se ne zna kada ce krenuti da pise.

U svakom slucaju najbolje da sam napravis neki loger, koji ce da cuva sve u kruznom baferu, a i plus da snima na fajl sistem ako treba.

Dakle cije logove zelis na taj nacin da obradis?


CHUPCKO
 
Odgovor na temu

karas

Član broj: 5574
Poruke: 482
*.routotelecom.com.



+1 Profil

icon Re: truncate() u kontra smeru09.11.2006. u 11:02 - pre 212 meseci
Vishe instanci jednog procesa upisuje u log. Fajl se jednom otvori i ne zatvara se, samo se dopisuje na kraj fajla. Nadao sam se da je neko vecc reshavao ovakav problem.:)
Sveti Avgustin: "Dobar hrišćanin treba da se kloni matematičara i svih onih koji daju lažna proročanstva. Postoji opasnost da su matematičari već sklopili pakt sa Đavolom, da pomrače čovekov um i da ga okuju okovima pakla."
 
Odgovor na temu

chupcko
Negde
Beograd

Član broj: 5560
Poruke: 1141

Sajt: www.google.com


+63 Profil

icon Re: truncate() u kontra smeru09.11.2006. u 12:20 - pre 212 meseci
Aha, jos ako na neki signal (HUP je dusu dalo) zatvoris i otvoris log ...

Naravno jos jedna stvar, da li program obrise log datoteku ili nastavi da pise na kraju.

Ali i dalje mislim da neces lako da resis. Ja bi definitno realizovao svoj kruzni buffer za log i plus sve jos ka syslog-u.

Lepo dignes socket, pa sve sto stigne ubacis u memoriju, naravno mozes da dignes drugi socket koji ce da ti isporuci trenutni sadrzaj bafera, ili pipe, poigraj se malo sa tim :), naravno sve sto dobijes na ovom prvom socketu posaljes jos i na syslog, i eto ti savrsenog sistema za logovanje :).

Naravno jednog dana kada ti program naraste, moci ces lako da logujes na drugoj masini , sto zna nekada da bude veoma vazno :).
CHUPCKO
 
Odgovor na temu

[es] :: Linux :: truncate() u kontra smeru

[ Pregleda: 2748 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.