Sponsored Content
Top Forums Shell Programming and Scripting Monitor and capture the latest entry from the log file Post 303012222 by Don Cragun on Wednesday 31st of January 2018 08:17:47 PM
Old 01-31-2018
Your tail | tail pipeline will never end. The 2nd tail reads one line from the end of the pipeline; but, since the tail -f will never terminate, the pipeline won't deliver an EOF to the 2nd tail until you manually kill the 1st tail.

If you want to read the last line of a file, just use tail -n 1 service.log. If you want to search for the first occurrence of a line containing a fixed string on the last line of a file, and, if the string is not found on that line, continue reading lines newly written to that file until that string is found, try something like:
Code:
tail -f -n 1 service.log | grep  -F "fixed string" | while IFS= read -r line
do	echo "found: $line"	# Do whatever you want to do with that line...
	break			# Terminate the pipeline and continue processing
				# with whatever follows the end of this loop.
done

You haven't told us what operating system or shell you're using (which you should always do on the first post in a new thread).

With many shells, the value assigned to the line variable will disappear when you exit the loop. With a few shells, the value assigned to line will remain in force after the loop ends.
This User Gave Thanks to Don Cragun For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

capture nohup log file

Hi, I am running my script using nohup, but I am not able to capture the log file for that process could naybody please help... Here is what I am doing.... nohup ./script & 1>/home/user1/log.txt but I am not able to capture the log.....Is there anyother way I can capture the log... (2 Replies)
Discussion started by: mgirinath
2 Replies

2. UNIX for Dummies Questions & Answers

capture shell output in cron entry

Hey all, I'm running scripts from cron and I want to capture the output from the 1 file handle. Ex. * * * * * /test.sh 1>test.log. I also want to append a formatted date to the file. * * * * /test.sh 1>test.log_date +%m%d%y but I keep keep getting the output as if I had just added the date... (5 Replies)
Discussion started by: steve72
5 Replies

3. Shell Programming and Scripting

how can i pick the latest log file as per below

in the below .. i want to pick the latest logfile which is having JPS.PR inside.. that means i want particularly "spgport040408041223.log:@@@@@@@@ 04:13:09 Adding: JPS.PR." which is latest among these.. is it possible to compare the current time with logfile time ? reptm@xblr0758rop>... (4 Replies)
Discussion started by: mail2sant
4 Replies

4. Shell Programming and Scripting

Capture all error message in Log file and send the Log file by email

Hi I have a requirement to write a script to capture all errors in a Logfile and send the file in email. If there is any error occurred the subject of email will be ERROR , If there are no error occurred the subject of email will be SUCCESS. So I created a Log file and put the Appropriate... (2 Replies)
Discussion started by: dgmm
2 Replies

5. Shell Programming and Scripting

Perl's buffered I/O is causing me to miss latest log file entries in log colorizer. How to fix?

I've been finding myself using a log file colorizer written in perl to reformat and colorize the output from many different programs. Mainly, however, I use it to make the output from "tail -f" commands more readable. The base perl script I use is based on "colorlogs.pl" available from the... (1 Reply)
Discussion started by: rcsteiner
1 Replies

6. Solaris

Crontab latest entry disappearing

The latest crontab entry is disappearing time and again on acceptance and production environment. the same entry gets deleted. any pointers to what might be causing this issue? (1 Reply)
Discussion started by: bluenavi
1 Replies

7. Solaris

Crontab latest entry disappearing. plz help

The latest crontab entry is disappearing time and again on acceptance and production environment. the same entry gets deleted. any pointers to what might be causing this issue? (6 Replies)
Discussion started by: bluenavi
6 Replies

8. HP-UX

Script to monitor /var/opt/resmon/log/event.log file

AM in need of some plugin/script that can monitor HP-UX file "/var/opt/resmon/log/event.log" . Have written a scrip in sh shell that is working fine for syslog.log and mail.log as having standard format, have interrogated that to Nagios and is working as I required . But same script failed to... (3 Replies)
Discussion started by: Shirishlnx
3 Replies

9. Shell Programming and Scripting

Need to grep certain entry out of log file

This one is a bit too challenging for me... Hopefully you guys can help. Let's say I have a log file called: "$MW_HOME/user_projects/domains/IDMDomain/servers/wls_ods?/logs/wls_ods1-diagnostic.log" In this log file I want to search for "DIP-10219". When I execute this $ cat... (7 Replies)
Discussion started by: exm
7 Replies

10. Shell Programming and Scripting

Selecting latest entry in the log file

Hi there I am trying to write a script where I will need to look for a specific word in the log file and I am aware this can be done by grep for example. As there will be multiple entries for this I want to grep the last one to enter the log... how would I go about this - would I have to use... (5 Replies)
Discussion started by: simpsa27
5 Replies
LOGTOP(1)						      General Commands Manual							 LOGTOP(1)

NAME
logtop - Realtime log line rate analyser SYNOPSIS
logtop [OPTIONS] DESCRIPTION
logtop is a System Administrator tool analyzing line rate on stdin. It reads on stdin and print a constantly updated result displaying, in columns: Line number, count, frequency, and the actual line. $ tail -f FILE | logtop is the friendly version of: $ watch 'tail FILE | sort | uniq -c | sort -gr' OPTIONS
-s, --size=K Only keep K lines in memory, instead of 10000. -q, --quiet Do not display a live view of the data, only display a top at exit. -l, --line-by-line=K Print result line by line, in a machine friendly format, K is the number of result to print per line. Line by line format is : [%d %f %s ]* %d : Number of occurences %f : Frequency of apparition %s : String (Control chars replaced by dots. -i, --interval=K Interval between graphical updates, in seconds. Defaults to 1. -h, --help Show summary of options. -v, --version Show version of program. EXAMPLES
Here are some logtop usage examples. tail -f cache.log | grep -o "HIT|MISS" | logtop Realtime hit / miss ratio on some caching software log file. tail -f access.log | cut -d' ' -f1 | logtop -s 10000 Realtime most querying IPs on your server, as long as log lines in access.log starts with the client IP. tail -f access.log | cut -d' ' -f7 | logtop -s 10000 Realtime most requested web pages in a NCSA like log file. cat auth.log | grep -v "CRON" | grep -o ": .*" | logtop -q -s 100000 Display a one-shot simple analyse of your auth.log. SEE ALSO
watch(1) AUTHOR
logtop was written by Julien Palard. This manual page was written by Julien Palard <julien@palard.fr>, for the Debian project (and may be used by others). April 16, 2011 LOGTOP(1)
All times are GMT -4. The time now is 11:14 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy