@Scrutinizer: -F option would work only if the file name doesn't change.
@ooilinlove: One alternative is, you can have a soft link pointing to the log file and the link should be re-created every hour. This can be taken care by an entry in cron.
For e.g., create a soft link 'GatewayTransaction.log' pointing to 'GatewayTransaction.20120429-08.log' in the 8th hour. In the 9th hour it should point to the 9th hour log file. This hourly rolling can be taken care by an entry in cron.
So once this is done, you can use the -F option of tail tail -F GatewayTransaction.log and this would continuously tail log files regardless of the hour.
Hi,
I have a log file that gets updated every second. Currently the size has grown to 20+ GB. I need to have a command/script, that will try to get the actual size of the file and will remove 50% of the data that are in the log file. I don't mind removing the data as the size has grown to huge... (8 Replies)
Hi, im trying to write a grep script that returns me the last inputs added in the last hour in the log file. Literally i have nothing yet but:
grep 'Line im looking for' LOGFILE.log | tail -1
this only gives me the last input, but no necessarily from the last hour.
Help Please. (4 Replies)
Hi
I have a file which is updated very frequently.
Where in i wanted to use tail -f command in the script and wanted to grep for a particular word.
But the issue is when i use tail -f filename|grep "word" ...
it will show me blank until the word is found in the real time. if it shows... (13 Replies)
Hello Masters,
I need one help.
I want to copy the files which are continuously generating on one server.
But this would be on hourly basis.
e.g.
-rw-rw-r-- 1 akore akore 0 Feb 12 03:20 test1.log
-rw-rw-r-- 1 akore akore 0 Feb 12 03:42 test2.log
-rw-rw-r-- 1 akore akore 0 Feb 12 04:22... (2 Replies)
Hi friends, I want to convert 24 hour timing to 12 hour please help me...
my data file looks like this..
13-Nov-2011 13:27:36 15.32044 72.68502
13-Nov-2011 12:08:31 15.31291 72.69807
16-Nov-2011 01:16:54 15.30844 72.74028
15-Nov-2011 20:09:25 15.35096 ... (13 Replies)
How to tail -f real time file.
I want to tail file created last time.
The server is gen new file Always.
.
An example file.
-rw-r--r-- 1 shinnie tiituck 251M Oct 18 05:39 20111018_00.log
-rw-r--r-- 1 shinnie tiituck 251M Oct 18 11:18 20111018_01.log
-rw-r--r-- 1 shinnie tiituck... (3 Replies)
I want to have a terminal open and have something like a "repeating cat" command running in it for a certain text file (in particular /var/log/system.log). So my terminal will scan or cat the text file every so often or whenever the text file system.log gets written to by the system, it will... (1 Reply)
Hi all,
i would like to write the shell script program, it can monitor the access_log "real time"
when the access_log writing the line contain "abcdef" the program will be "COPY" this line into a file named "abcdef.txt", do the same thing if the contain "123456" "COPY" it into a file named... (3 Replies)
ROTATELOGS(8) rotatelogs ROTATELOGS(8)NAME
rotatelogs - Piped logging program to rotate Apache logs
SYNOPSIS
rotatelogs [ -l ] [ -L linkname ] [ -p program ] [ -f ] [ -D ] [ -t ] [ -v ] [ -e ] [ -c ] [ -n number-of-files ] logfile rotation-
time|filesize(B|K|M|G) [ offset ]
SUMMARY
rotatelogs is a simple program for use in conjunction with Apache's piped logfile feature. It supports rotation based on a time interval or
maximum size of the log.
OPTIONS -l Causes the use of local time rather than GMT as the base for the interval or for strftime(3) formatting with size-based rotation.
-L linkname
Causes a hard link to be made from the current logfile to the specified link name. This can be used to watch the log continuously
across rotations using a command like tail -F linkname.
-p program
If given, rotatelogs will execute the specified program every time a new log file is opened. The filename of the newly opened file
is passed as the first argument to the program. If executing after a rotation, the old log file is passed as the second argument.
rotatelogs does not wait for the specified program to terminate before continuing to operate, and will not log any error code
returned on termination. The spawned program uses the same stdin, stdout, and stderr as rotatelogs itself, and also inherits the
environment.
-f Causes the logfile to be opened immediately, as soon as rotatelogs starts, instead of waiting for the first logfile entry to be read
(for non-busy sites, there may be a substantial delay between when the server is started and when the first request is handled,
meaning that the associated logfile does not "exist" until then, which causes problems from some automated logging tools)
-D Creates the parent directories of the path that the log file will be placed in if they do not already exist. This allows strftime(3)
formatting to be used in the path and not just the filename.
-t Causes the logfile to be truncated instead of rotated. This is useful when a log is processed in real time by a command like tail,
and there is no need for archived data. No suffix will be added to the filename, however format strings containing '%' characters
will be respected.
-v Produce verbose output on STDERR. The output contains the result of the configuration parsing, and all file open and close actions.
-e Echo logs through to stdout. Useful when logs need to be further processed in real time by a further tool in the chain.
-c Create log file for each interval, even if empty.
-n number-of-files
Use a circular list of filenames without timestamps. With -n 3, the series of log files opened would be "logfile", "logfile.1",
"logfile.2", then overwriting "logfile". Available in 2.4.5 and later.
logfile
rotationtime
The time between log file rotations in seconds. The rotation occurs at the beginning of this interval. For example, if the rotation
time is 3600, the log file will be rotated at the beginning of every hour; if the rotation time is 86400, the log file will be
rotated every night at midnight. (If no data is logged during an interval, no file will be created.)
filesize(B|K|M|G)
The maximum file size in followed by exactly one of the letters B (Bytes), K (KBytes), M (MBytes) or G (GBytes). .PP When time and
size are specified, the size must be given after the time. Rotation will occur whenever either time or size limits are reached.
offset The number of minutes offset from UTC. If omitted, zero is assumed and UTC is used. For example, to use local time in the zone UTC
-5 hours, specify a value of -300 for this argument. In most cases, -l should be used instead of specifying an offset.
EXAMPLES
CustomLog "|bin/rotatelogs /var/log/logfile 86400" common
This creates the files /var/log/logfile.nnnn where nnnn is the system time at which the log nominally starts (this time will always be a
multiple of the rotation time, so you can synchronize cron scripts with it). At the end of each rotation time (here after 24 hours) a new
log is started.
CustomLog "|bin/rotatelogs -l /var/log/logfile.%Y.%m.%d 86400" common
This creates the files /var/log/logfile.yyyy.mm.dd where yyyy is the year, mm is the month, and dd is the day of the month. Logging will
switch to a new file every day at midnight, local time.
CustomLog "|bin/rotatelogs /var/log/logfile 5M" common
This configuration will rotate the logfile whenever it reaches a size of 5 megabytes.
ErrorLog "|bin/rotatelogs /var/log/errorlog.%Y-%m-%d-%H_%M_%S 5M"
This configuration will rotate the error logfile whenever it reaches a size of 5 megabytes, and the suffix to the logfile name will be cre-
ated of the form errorlog.YYYY-mm-dd-HH_MM_SS.
CustomLog "|bin/rotatelogs -t /var/log/logfile 86400" common
This creates the file /var/log/logfile, truncating the file at startup and then truncating the file once per day. It is expected in this
scenario that a separate process (such as tail) would process the file in real time.
PORTABILITY
The following logfile format string substitutions should be supported by all strftime(3) implementations, see the strftime(3) man page for
library-specific extensions.
o %A - full weekday name (localized)
o %a - 3-character weekday name (localized)
o %B - full month name (localized)
o %b - 3-character month name (localized)
o %c - date and time (localized)
o %d - 2-digit day of month
o %H - 2-digit hour (24 hour clock)
o %I - 2-digit hour (12 hour clock)
o %j - 3-digit day of year
o %M - 2-digit minute
o %m - 2-digit month
o %p - am/pm of 12 hour clock (localized)
o %S - 2-digit second
o %U - 2-digit week of year (Sunday first day of week)
o %W - 2-digit week of year (Monday first day of week)
o %w - 1-digit weekday (Sunday first day of week)
o %X - time (localized)
o %x - date (localized)
o %Y - 4-digit year
o %y - 2-digit year
o %Z - time zone name
o %% - literal `%'
Apache HTTP Server 2018-07-06 ROTATELOGS(8)