Solved

unix logs

Posted on 2015-01-04
11
248 Views
Last Modified: 2015-01-19
Hi ,

I am writing few shell scripts to process a txt files , say 1.sh , 2.sh and 3.sh
I need to capture all logs in /var/log/messages using logger
Is it possible i can write some function/configuration to capture all logs in all  the shellscripts without adding echo or logger in the shell scripts.
Or please advice good way of capturing logs of all scripts
I am using Linux .

Thanks
0
Comment
Question by:magento
  • 4
  • 4
  • 2
  • +1
11 Comments
 
LVL 40

Assisted Solution

by:omarfarid
omarfarid earned 250 total points
Comment Utility
You can always redirect stdout & sterr to a file like:

1.sh >> /tmp/mylog 2>&1
0
 
LVL 5

Author Comment

by:magento
Comment Utility
Omar,

My company looking for a centralised logs . eg.a property file for putting INFO,FATAL,ERROR etc ?  like log4j in java
can we use log4sh for a centralised logging
https://sites.google.com/a/forestent.com/projects/log4sh

Thanks
0
 
LVL 40

Expert Comment

by:omarfarid
Comment Utility
I never used log4sh before, but from the link provided it seems to be what you want.

You can download and install on your system and use it for some time to see if its really meeting your requirements.
0
 
LVL 61

Expert Comment

by:gheist
Comment Utility
You can filter logs by content of log lines in syslog-ng and rsyslog. shell is very inefficient, probably less interpreted languages like perl or python can come handy.
0
 
LVL 48

Accepted Solution

by:
Tintin earned 250 total points
Comment Utility
If you just want a simple way to log all output from a script, then just add

exec >>/var/log/$(basename $0).log 2>&1

Open in new window


to the top of each script.
0
Enabling OSINT in Activity Based Intelligence

Activity based intelligence (ABI) requires access to all available sources of data. Recorded Future allows analysts to observe structured data on the open, deep, and dark web.

 
LVL 5

Author Comment

by:magento
Comment Utility
Hi Tintin,

Thank you. It will log all the errors too right ?
If yes, i can create a new shell script named log.sh and add the above code which you mentioned.
Later source the log.sh on all of the shell scripts right ? So it will capture all the logs.
I will keep this as an option , but since my company need a centralised log monitoring like log4perl in perl , could you please check if log4sh is vulnerable or i can use it for my project?

Thanks
0
 
LVL 61

Expert Comment

by:gheist
Comment Utility
vulnerable how?
I think it is incapable of processing debug logs from any network device. You must use at least system of capable accomodating that like splunk or greylog2.
0
 
LVL 5

Author Comment

by:magento
Comment Utility
Hi Gheist,

I am going to use the log4sh only for my few shell scripts. So i want to make sure that the log4sh is not an vulnerable and i can use it for one of my customer .
0
 
LVL 61

Expert Comment

by:gheist
Comment Utility
How would it chew 2GB/min from 96-port cisco switch?
0
 
LVL 5

Author Comment

by:magento
Comment Utility
Sorry , i dont understand your question.

Anyway i will try install log4sh and let you know any issues.
0
 
LVL 61

Expert Comment

by:gheist
Comment Utility
I suspect that shell-based log analyser will not sustain any reasonably massive flow of logs.
0

Featured Post

IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

Suggested Solutions

The purpose of this article is to demonstrate how we can use conditional statements using Python.
Active Directory replication delay is the cause to many problems.  Here is a super easy script to force Active Directory replication to all sites with by using an elevated PowerShell command prompt, and a tool to verify your changes.
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.
Connecting to an Amazon Linux EC2 Instance from Windows Using PuTTY.

728 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now