Kudithipudi.Org

January 26, 2011

HOW TO : Combining Perl and Zoho to produce reports

Filed under: HOWTO,Programming,Technology,Web — Vinay @ 11:00 pm

This HOW TO is more for my notes. We had a request at work, where we had to parse some log files and create a graph from the data in the log files.

The log files looked like this

0m0.107s
0m0.022s
0m0.015s
2011-01-05_02_22
0m0.102s
0m0.024s
0m0.014s
2011-01-05_02_23

I wrote the following perl script to get the log file to look as such

| 0m0.107s| 0m0.022s| 0m0.015s| 2011-01-05 | 02:22

| 0m0.102s| 0m0.024s| 0m0.014s| 2011-01-05 | 02:23 

perl script

#!/usr/bin/perl
# Modules to load
# use strict;
use warnings;

# Variables
my $inputFile = 'input.txt';
my $version = 0.1;

my $logFile = 'parsed_input.csv';

# Sub Functions
sub Log($$$);
sub Trim($);

# Clear the screen
system $^O eq 'MSWin32' ? 'cls' : 'clear';

# Open the output log file
open(LOGFILE,"> $logFile") || die "Couldn't open $logFile, exiting $!\n";

# Open the input file
open(INPUTFILE,"< $inputFile") || die "Couldn't open $inputFile, exiting $!\n";

# Process the input file, one line at a time
while (defined ($line = <INPUTFILE>)) {
	chomp $line;
	# Check for blank line
	if ($line =~ /^$/)
		{
			# Start a new line in the output
			print LOGFILE "\n";
		}
	else
		{
			# Split the date and time
			if ($line =~ /2011/)
				{
					@date = split (/_/,$line);
					print LOGFILE "| $date[0] | $date[1]:$date[2]";
				}
			else
				{
					# Write the value to the output
					print LOGFILE "| $line";
				}
		}
	}
I then took the parsed log files and imported them into the cloud based reporting engine provided by Zoho at http://reports.zoho.com

The final result are these reports

SERVER1

SERVER2

Did I say, I love technology? :)

Time does fly :)

Filed under: Family,Photography — Vinay @ 9:08 pm

Two pictures of my nephew one year apart. Now, I feel old :)

HOW TO : Find out which network port a program is using in linux

Filed under: HOWTO,Linux,Technology — Vinay @ 1:46 pm

Quick way to figure out, which ports a particular program is using in linux

 netstat -plan | grep -i PROGRAM_NAME 

Example : Check which ports SSH is listening on


samurai@samurai:~$ sudo /bin/netstat -plan | grep sshd
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      5257/sshd
tcp        0     52 123.123.123.123:22      124.124.124.124:32846     ESTABLISHED 3551/sshd: samurai
tcp6       0      0 :::22                   :::*                    LISTEN      5257/sshd
unix  3      [ ]         STREAM     CONNECTED     5893     3551/sshd: samurai
unix  2      [ ]         DGRAM                    5849     3551/sshd: samurai

HOW TO : Manage startup services in Ubuntu

Filed under: HOWTO,Linux,Technology — Vinay @ 10:06 am

Most Redhat/Fedora users are used to chkconfig and service for controlling the services/programs that startup at boot time. Here is how you do it in Ubuntu

  • Check status of a particular service
 sudo SERVICE_NAME status 

Example : Check the status of Apache Web Service

samurai@samurai:~$ sudo service apache2 status
Apache is running (pid 3496).
  • Add a service to start on bootup
 update-rc.d SERVICE_NAME add 

Example : Configure squid to start on bootup

 update-rc.d squid add 
  • Stop a service from starting on bootup
 update-rc.d SERVICE_NAME remove 

Example : Configure squid to NOT start on bootup

 update-rc.d squid remove 

NOTE : You need to have a startup script in /etc/init.d for the service to ensure update-rc.d works fine.

New lens and my mom..

Filed under: Photography — Vinay @ 9:23 am

Picture of my mom taken with my new toy (Canon 50mm F/1.8 lens). My mom is usually a shy person and this is probably the first time I saw her being comfortable in front of a camera.

I took a photography class recently and am finally enlightened to what a good lens can do :) .  Prior to the class, I was always of the opinion that a zoom lens is the way to go. But my instructor opened my eyes to the world of fixed (and expensive) lenses :) .

More pictures from this photo shoot at http://www.flickr.com/photos/kudithipudi/sets/72157625773287053/with/5385052525/

Powered by WordPress