I think i give it a try afaik the "logfile" is produced at a given time once a day only so if its possible that the file isnt altered at that few seconds it is ok ... I think it might be a cron job, but i am searching for that ...
Thanks in Advance
MH
| [reply] |
I don't know much about concurrent access to files, but wouldn't locking the file solve this issue?
| [reply] |
Well, you would have to lock the file using the flock call of Tie::File. It will invalidate the cache, so it's not efficient. And then it will only work if the writers use flock as well (which not every writer actually needs to do; if all writers open the file for append, and writes are smaller than the buffer size (typically 8k), data won't be garbled).
But I fail to see the point of Tie::File in the first place. Considering the OP just wants to move files, and doesn't express any wish to actually remove data, what's the point of reading in the file in the first place?
| [reply] |
Maybe I misunderstood what the OP needed, or the meaning of "rotate a logfile". Another thing that hinted me towards thinking that the solution I posted might be what he needed was when he said "I could store a week (of logs) till overwriting the first log (entry)". In parenthesis I added words that illustrate my interpretation of the problem.
Regarding the locking / efficiency issues, I don't have much to comment since I don't work in an environment that has me concerned about them. Personally though, I would wait until those issues arose before discarding any correct solution.
| [reply] |