sslug-teknik team mailing list archive
-
sslug-teknik team
-
Mailing list archive
-
Message #90068
Re: Tjek om en fil er åben
Robert Larsen <robert@xxxxxxxxxxxxxxxxx> writes:
> Jeg har en server process, som skriver en masse log filer. Når log
> filerne når op på 10MB bliver de lukket og en ny påbegyndt.
> Det kører fint.
Har du andre ting der piller i det katalog? Ellers ville det måske
være en mulighed at se på inotify og så pakke filerne lige så snart at
serveren lukker dem.
Det kunne være noget der bruger inotify-tolls ala:
#!/bin/sh
LOG_PATH=/data/ChatServer/XML_logs
inotifywait -e close_write --format %f $LOG_PATH | while read file ; do
case $file in
*.xml ) gzip $LOG_PATH/$file ;;
esac
done
> Men lsof er meget er meget lang tid om at gøre sig færdig:
> [root@xbox scripts]# time lsof
> /data/ChatServer/XML_logs/Chat_DK_1_ChatLog_2006-11-28_23\:05\:55.xml
>
> real 0m16.482s
> user 0m0.388s
> sys 0m16.533s
> [root@xbox scripts]#
Hvor mange filer har du liggende i det katalog og hvilket filsystem
bruger du? Tager det ikke cirka lige så lang tid bare at køre en 'ls'
på samme fil?
Follow ups
References