06-16-2009
List all log records logged after $timestamp ?
I am trying to find a way to list every records inside a file (usually a log file) that are present after a record mathing/greater-then a timestamp supplied by another script.
The timestamp can be anywhere inside the record and it is usually in the standard `date` format (will not look for other formats).
ex:
Tue Jun 16 03:47:58 EDT 2009
I thought of using awk (on client's AIX 4.2) with index(str,regex) but that function does not see any timestamps inside the records (copied code below from memory).
awk -F" " '{
WHICHPOS=index($0,"[A-Z][a-z][a-z] [A-Z][a-z][a-z] [0-3][0-9] [0-2][0-9]:[0-5][0-9]:[0-5][0-9] * 20[0-9][0-9]")
if ( WHICHPOS > 0) print WHICHPOS, NR, $0
}' /tmp/a_file
At first the * was producting verry odd results (was replaced by content of `ls *`). So I removed the " * 20[0-9][0-9]" part.
But then, it never sees any timestamp (I checked the file content).
I am beginning to wonder what kind of regular expression that index() can take.
Is there a timestamp pattern available in regular expressions ?
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
I'm trying to execute a single shell command that will give me a sorted list of all the users currently logged into the system, displaying the users name as it appears in /etc/passwd.
I've tried
awk -F: '{print $1}' /etc/passwd | xargs finger -s | cut -c11-28 | uniq
This list whoever does... (7 Replies)
Discussion started by: kungfuice
7 Replies
2. UNIX for Dummies Questions & Answers
Hi,
Can I get a script to list out all the users, who has not logged on since last 90 days. Last command in not working due due to /var/adm/wtmpx is more than 2 GB.
Thanks in advance.
Regards,
Roni (10 Replies)
Discussion started by: manasranjanpand
10 Replies
3. Solaris
I need actuall script which List all inactive users who has not logged on since last 90 days
Thanks in advance.
Di! (17 Replies)
Discussion started by: haridham
17 Replies
4. UNIX for Dummies Questions & Answers
Hello,
I'm trying to do a list of user that never connected to a couple of servers. I want to do a diff between the servers lists, and print out only the users that never has logged on each server. Here my first step :
SERVER01:
# finger `egrep -v -e "^\s*#" /etc/passwd | awk '{ print $1 }' |... (4 Replies)
Discussion started by: gogol_bordello
4 Replies
5. Programming
How can I get the list of logged in users in the system programmatically?
I can get the list with 'who' or 'users' commands but I need to get the list programmatically...
May someone help, please?
Thanks in advance. (2 Replies)
Discussion started by: xyzt
2 Replies
6. Shell Programming and Scripting
Hi,
I'm primarily a Cisco/Juniper networking guy, so you'll have to forgive my ignorance when it comes to scripting (although I do write simple backup scripts and things of that nature on a regular basis and I run Linux at home, so I am vaguely familiar with it). What I need to do should be... (2 Replies)
Discussion started by: wolverene13
2 Replies
7. Shell Programming and Scripting
I have a log file which has records with hung thread information/error
I need to find out hung thread from log file greater than timestamp supplied.
00000026 ThreadMonitor W WSVR0605W: Thread "WebContainer : 1" (00000027) has been active for 701879 milliseconds and may be hung. There is/are... (6 Replies)
Discussion started by: megh
6 Replies
8. Shell Programming and Scripting
Hi everyone,
At work we were told to check the list of users of an application server and delete all those that have left the company or don't need access to the application anymore. Here's what I came up with. Would you be as kind as to tell me your opinion and whether there is a faster / easier... (4 Replies)
Discussion started by: gacanepa
4 Replies
9. Shell Programming and Scripting
Hi Guys!
I am sure that this question might appeared previously, but I still don't know how to show a list of logged out users. Please help with this!
Thanks in advance:) (5 Replies)
Discussion started by: saloliubliu
5 Replies
10. UNIX for Beginners Questions & Answers
Dear Experts,
I have a log file that contains a timestamp, I would like to filter record from that file based on timestamp. For example refer below file -
cat sample.txt
Jan 19 20:51:48 mukul-Vostro-14-3468 systemd: pam_unix(systemd-user:session): session opened for user root by (uid=0)... (6 Replies)
Discussion started by: mukulverma2408
6 Replies
LEARN ABOUT DEBIAN
courier::filter::logger::file
Courier::Filter::Logger::File(3pm) User Contributed Perl Documentation Courier::Filter::Logger::File(3pm)
NAME
Courier::Filter::Logger::File - File logger for the Courier::Filter framework
SYNOPSIS
use Courier::Filter::Logger::File;
my $logger = Courier::Filter::Logger::File->new(
file_name => $file_name
);
# For use in an individual filter module:
my $module = Courier::Filter::Module::My->new(
...
logger => $logger,
...
);
# For use as a global Courier::Filter logger object:
my $filter = Courier::Filter->new(
...
logger => $logger,
...
);
DESCRIPTION
This class is a file logger class for use with Courier::Filter and its filter modules. It is derived from
Courier::Filter::Logger::IOHandle.
Constructor
The following constructor is provided:
new(%options): returns Courier::Filter::Logger::File; throws Courier::Error
Creates a new logger that logs messages as lines to a file. Opens the file for writing, creating it if necessary.
%options is a list of key/value pairs representing any of the following options:
file_name
Required. The name of the file to which log messages should be written.
timestamp
A boolean value controlling whether every log message line should be prefixed with a timestamp (in local time, in ISO format).
Defaults to false.
Instance methods
The following instance methods are provided, as inherited from Courier::Filter::Logger::IOHandle:
log_error($text): throws Perl exceptions
Logs the error message given as $text (a string which may contain newlines). Prefixes each line with a timestamp if the "timestamp"
option has been set through the constructor.
log_rejected_message($message, $reason): throws Perl exceptions
Logs the Courier::Message given as $message as having been rejected due to $reason (a string which may contain newlines).
SEE ALSO
Courier::Filter::Logger::IOHandle, Courier::Filter::Logger, Courier::Filter::Overview.
For AVAILABILITY, SUPPORT, and LICENSE information, see Courier::Filter::Overview.
AUTHOR
Julian Mehnle <julian@mehnle.net>
perl v5.14.2 2011-12-27 Courier::Filter::Logger::File(3pm)