Sponsored Content
Top Forums Shell Programming and Scripting Check specific content from log file Post 302991603 by nms on Tuesday 14th of February 2017 11:11:39 AM
Old 02-14-2017
Check specific content from log file

Hi all,

i have a logfile which is continuously being updated. I have built a script to check for a specific content and if it is found, it sends a string into a file. Here's the current script:

Code:
#!/bin/bash

logfile=/opt/jboss-eap-6.3/standalone/log/server.log

tail -fn0 $logfile | \
while read line ; do
        echo "$line" | grep -q "SocketTimeoutException invoking http://10.192.1.8:8001: connect timed out"
        if [ $? = 0 ]
        then
            echo "ConnectionTimeout_ESB-OldStack=YES" > /home/nms/Disconnection_oldstack.txt
        else
            echo "ConnectionTimeout_ESB-OldStack=NO" > /home/nms/Disconnection_oldstack.txt
        fi
done

As you can see i am continuously reading from the "server.log" file and while reading each entry, if the "grep" command find the matched string it echoes to file, else it echos to the same file but with a different string (YES or NO).

However i noticed that when the end of the day is reached, i.e @ 23:59, the file "/home/nms/Disconnection_oldstack.txt" stops updating. I noticed that the "server.log" file closes and a new one is reopened at that time, here below:

Code:
-rw-r--r--. 1 jboss jboss  29304874 Feb 10 23:59 server.log.2017-02-10.gz
-rw-r--r--. 1 jboss jboss  21277719 Feb 11 23:59 server.log.2017-02-11.gz
-rw-r--r--. 1 jboss jboss 445767175 Feb 12 23:59 server.log.2017-02-12
-rw-r--r--. 1 jboss jboss 782710795 Feb 13 23:59 server.log.2017-02-13
-rw-r--r--. 1 jboss jboss 143127996 Feb 14 09:40 server.log

i tried to add
Code:
while [ ! -f $logfile ]; do sleep 5; done

in the beginning of the script so it sleeps if file is does not exist (since i thought that at the time of the file rotation it stops since the file is not found), but the same thing happened.
Am i missing something?
Note: The output redirection to file is necessary in this case so i need to stick to that!

Thanks in advance for your feedback!
 

10 More Discussions You Might Find Interesting

1. AIX

find for specific content in file in the directory and list only file names

Hi, I am trying to find the content of file using grep and find command and list only the file names but i am getting entire file list of files in the directory find . -exec grep "test" {} \; -ls Can anyone of you correct this (2 Replies)
Discussion started by: madhu_Jagarapu
2 Replies

2. Shell Programming and Scripting

To check the content of one file in another

Hi , I have a file called "X" . the content of X are X -- abc def and i have a file called "Y" , the content of Y are Y -- erty sdss s abc sfs def I need to check if the content of file X is contained in Y.Only unix (7 Replies)
Discussion started by: giri_luck
7 Replies

3. Shell Programming and Scripting

Remove specific content in a file

Hi, I have a file called fl_list consists of files i have to archive. I want to create a exception parm called except_parm, so if it finds the directory it will not archive these files and remove from fl_list. $ cat fl_list /apps/dev/ihub/ready/IA003B/IA003B_Deal_Header_yyyymmdd_hhmmss.txt... (1 Reply)
Discussion started by: k9cheung
1 Replies

4. Shell Programming and Scripting

Extract specific content from a file

My input file: >sequence_1 ASSSSSSSSSSSDDDDDDDDDDDCCCCCCC ASDSFDFFDFDFFWERERERERFSDFESFSFD >sequence_2 ASDFDFDFFDDFFDFDSFDSFDFSDFSDFDSFASDSADSADASD ASDFFDFDFASFASFASFAFSFFSDASFASFASFAFS >sequence_3 VEDFGSDGSDGSDGSDGSDGSDGSDG dDFSDFSDFSDFSDFSDFSDFSDFSDF SDGFDGSFDGSGSDGSDGSDGSDGSDG My... (22 Replies)
Discussion started by: patrick87
22 Replies

5. Shell Programming and Scripting

want to print the file content from the specific line

Hi All, I would like to print the content from the specific line of a file . For example... i have file abc.txt which has 100 lines of code ,from this file i would like to print the content from 20,19,18th line......like that Regards Srikanth (4 Replies)
Discussion started by: srikanthg
4 Replies

6. Shell Programming and Scripting

split file content into specific folders

Hi I have a large text file and I want to split its content into multiple flies. this large file contains several blocks of codes separated by a comment line for each block. this comment line represents a directory path So, when separate these blocks each into a separate file, This output... (7 Replies)
Discussion started by: turki_00
7 Replies

7. Shell Programming and Scripting

Extracting content from a file in specific format

Hi All, I have the file in this format **** Results Data **** Time or Step 1 2 20 0.000000000e+00 0s 0s 0s 1.024000000e+00 Us 0s 0s 1.100000000e+00 1s 0s 0s 1.100000001e+00 1s 0s 1s 2.024000000e+00 Us Us 1s 2.024000001e+00 ... (7 Replies)
Discussion started by: diehard
7 Replies

8. Shell Programming and Scripting

want to search some content of the file with specific to user

I have some users in one unix system and i want to search some files with specific to user and then i want to find some content inside that file so can u help me how we can implement it? File location is as below. /pools/home_unix/cmadireddy/work/models/model/ cmadireddy is user name. now... (6 Replies)
Discussion started by: lathigara
6 Replies

9. Shell Programming and Scripting

Check content of file

Hi All, I m very new to unix...i jus want to chk the content of file. ma requirement is if file has a content then display it else dont display or something pls specify which loop shalli use either for or while?? (20 Replies)
Discussion started by: navsan
20 Replies

10. Shell Programming and Scripting

Content merging at a specific location in a file

Hi, This is a bit lengthy problem, i will try to keep explaining it simple. I have got a file say file1 that contains the following in it, ------------------------------------------------------------------------ r201463 | ngupta@gmail.com | 2012-06-19 22:02:20 +0530 (Tue, 19 Jun 2012) |... (3 Replies)
Discussion started by: Kashyap
3 Replies
CLOGIT(3)						     Common Library Functions							 CLOGIT(3)

NAME
Clogit - log server messages in local log or in system logger SYNOPSIS
#include "Clog.h" int Cinitlog (char *cmd, char *logfile) int Clogit (int level, char *func, char *msg, ...) int Cvlogit (int level, char *func, char *msg, va_list ap) DESCRIPTION
Cinitlog initializes the server logging routines. Clogit logs server messages in a local log or in the system logger. Cvlogit is the same as Clogit but takes a va_list instead of a variable number of arguments. cmd specifies a string to be prepended to the syslog messages. logfile specifies a path for the server log file. If set to syslog, the system logger will be used. By default, only messages with level at least as important as LOG_INFO will be logged. The level threshold can be changed with the environment variable LOG_PRIORITY. level is associated with the message. The possible values, in order of decreasing importance are: LOG_EMERG LOG_ALERT LOG_CRIT LOG_ERR LOG_WARNING LOG_NOTICE LOG_INFO LOG_DEBUG func is the name of the function that issues the message. msg is a format as in printf. RETURN VALUE
These routines return 0 if the operation was successful or -1 if the operation failed. In the latter case, serrno is set appropriately. ERRORS
EFAULT logfile is a NULL pointer. ENAMETOOLONG The length of logfile exceeds CA_MAXPATHLEN. LCG
$Date$ CLOGIT(3)
All times are GMT -4. The time now is 03:53 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy