• Home
  • Archive
  • Tools
  • Contact Us

The Customize Windows

Technology Journal

  • Cloud Computing
  • Computer
  • Digital Photography
  • Windows 7
  • Archive
  • Cloud Computing
  • Virtualization
  • Computer and Internet
  • Digital Photography
  • Android
  • Sysadmin
  • Electronics
  • Big Data
  • Virtualization
  • Downloads
  • Web Development
  • Apple
  • Android
Advertisement
You are here:Home » Join/Merge Multiple Log Files For Big Data Analysis

By Abhishek Ghosh June 27, 2017 9:03 am Updated on June 27, 2017

Join/Merge Multiple Log Files For Big Data Analysis

Advertisement

Normally log automatically should grow as big possible. But we use logrotate which does the opposite action as running cat and other tools on SSH over big files consumes memory, time and often difficult to do what we want. Also, old files are compressed. Here are the ways to join/merge multiple log files for big data analysis, store them to openstack based cloud storage and delete old files.

Join-Merge Multiple Log Files For Big Data Analysis

 

Join/Merge Multiple Log Files For Big Data Analysis

 

To test this method, you can go to /var/log/ and your web server’s directory like /var/log/nginx or /var/log/apache2. There will be access.log files. In order to get a list of filenames sorted by time listed by newest first, you can run this command :

Vim
1
ls -t

Normally we can run cat to concat files in this fashish :

Advertisement

---

Vim
1
cat access.log access.log.1 >> all_access.log

But more that access.log.1 become compressed, which we can list by running this command :

Vim
1
ls -t | grep access

Which will give this kind of output :

Vim
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
access.log
access.log.1
access.log.2.gz
access.log.3.gz
access.log.4.gz
access.log.5.gz
access.log.6.gz
access.log.7.gz
access.log.8.gz
access.log.9.gz
access.log.10.gz
access.log.11.gz
access.log.12.gz
access.log.13.gz
access.log.14.gz
other_vhosts_access.log

To make it practical, we will create a directory named access_combo :

Vim
1
mkdir /var/log/apache2/access_combo

Then move all the files to that directory :

Vim
1
mv /var/log/apache2/access.log* /var/log/apache2/access_combo

Move the current access.log back, properly chown and restart web server :

Vim
1
2
3
4
cp /var/log/apache2/access_combo/access.log /var/log/apache2/access.log
chown www-data:www-data /var/log/apache2/access.log
echo " " > /var/log/apache2/access.log
systemctl restart apache2

echo " " > /var/log/apache2/access.log command empties a file.

For the compressed files, we can use zcat instead of cat like :

Vim
1
zcat access.log.2.gz access.log.3.gz >> all_access.log

As only two files are uncompressed in our case, we can compress them and delete the original :

Vim
1
2
3
4
5
cd /var/log/apache2/access_combo/
tar -cvzf access.log.gz access.log
tar -cvzf access.log.1.gz access.log.1
rm access.log
rm access.log.1

Now if you run ls -t, you’ll get a sorted, same format list of files :

Vim
1
2
3
4
5
6
7
cd /var/log/apache2/access_combo/
ls -t
# output
access.log.1.gz  access.log.4.gz  access.log.8.gz   access.log.12.gz
access.log.gz    access.log.5.gz  access.log.9.gz   access.log.13.gz
access.log.2.gz  access.log.6.gz  access.log.10.gz  access.log.14.gz
access.log.3.gz  access.log.7.gz  access.log.11.gz

We can simply merge them them with a time stamp :

Vim
1
2
cd /var/log/apache2/access_combo/
zcat access.log.* > merged_access_`date +"%d-%m-%Y"`.log

The command will take some time. However, I will suggest a manual work as possibly you need a manual check of dates of each files, access.log.1.gz not newest. access.log.14.gz is oldest in out case.

Vim
1
2
3
4
5
6
7
cd /var/log/apache2/access_combo/
zcat access.log.gz > merged_access.log
zcat access.log.1.gz > merged_access.log
zcat access.log.2.gz > merged_access.log
...
...
zcat access.log.14.gz > merged_access.log

We can rename with date stamp :

Vim
1
mv merged_access.log merged_access_`date +"%d-%m-%Y"`.log

Now, we do not need the old compressed files :

Vim
1
2
cd /var/log/apache2/access_combo/
rm access.log.*

The total thing appearing many commands but we can create a small bash script to make it automated except the last step to merge :

Vim
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#! /bin/bash
 
mkdir /var/log/apache2/access_combo
mv /var/log/apache2/access.log* /var/log/apache2/access_combo
cp /var/log/apache2/access_combo/access.log /var/log/apache2/access.log
chown www-data:www-data /var/log/apache2/access.log
echo " " > /var/log/apache2/access.log
systemctl restart apache2
tar -cvzf /var/log/apache2/access_combo/access.log.gz /var/log/apache2/access_combo/access.log
tar -cvzf /var/log/apache2/access_combo/access.log.1.gz /var/log/apache2/access_combo/access.log.1
rm /var/log/apache2/access_combo/access.log
rm /var/log/apache2/access_combo/access.log.1
echo "Ready to merge the files:"
ls -t

Tagged With https://thecustomizewindows com/2017/06/joinmerge-multiple-log-files-big-data-analysis/ , log data
Facebook Twitter Pinterest

Abhishek Ghosh

About Abhishek Ghosh

Abhishek Ghosh is a Businessman, Surgeon, Author and Blogger. You can keep touch with him on Twitter - @AbhishekCTRL.

Here’s what we’ve got for you which might like :

Articles Related to Join/Merge Multiple Log Files For Big Data Analysis

  • Nginx WordPress Installation Guide (All Steps)

    This is a Full Nginx WordPress Installation Guide With All the Steps, Including Some Optimization and Setup Which is Compatible With WordPress DOT ORG Example Settings For Nginx.

  • WordPress & PHP : Different AdSense Units on Mobile Devices

    Here is How To Serve Different AdSense Units on Mobile Devices on WordPress With PHP. WordPress Has Function Which Can Be Used In Free Way.

  • Changing Data With cURL for OpenStack Swift (HP Cloud CDN)

    Changing Data With cURL For Object is Quite Easy in OpenStack Swift. Here Are Examples With HP Cloud CDN To Make it Clear. Official Examples Are Bad.

  • Command Prompt Commands : Alphabetical list of all commands in Windows 7

    Command Prompt Commands in Windows 7 provides the user access to 180+ command line commands. Here is a list of 200 Command Prompt Commands in Windows 7.

performing a search on this website can help you. Also, we have YouTube Videos.

Take The Conversation Further ...

We'd love to know your thoughts on this article.
Meet the Author over on Twitter to join the conversation right now!

If you want to Advertise on our Article or want a Sponsored Article, you are invited to Contact us.

Contact Us

Subscribe To Our Free Newsletter

Get new posts by email:

Please Confirm the Subscription When Approval Email Will Arrive in Your Email Inbox as Second Step.

Search this website…

 

Popular Articles

Our Homepage is best place to find popular articles!

Here Are Some Good to Read Articles :

  • Cloud Computing Service Models
  • What is Cloud Computing?
  • Cloud Computing and Social Networks in Mobile Space
  • ARM Processor Architecture
  • What Camera Mode to Choose
  • Indispensable MySQL queries for custom fields in WordPress
  • Windows 7 Speech Recognition Scripting Related Tutorials

Social Networks

  • Pinterest (24.3K Followers)
  • Twitter (5.8k Followers)
  • Facebook (5.7k Followers)
  • LinkedIn (3.7k Followers)
  • YouTube (1.3k Followers)
  • GitHub (Repository)
  • GitHub (Gists)
Looking to publish sponsored article on our website?

Contact us

Recent Posts

  • Hybrid Multi-Cloud Environments Are Becoming UbiquitousJuly 12, 2023
  • Data Protection on the InternetJuly 12, 2023
  • Basics of BJT TransistorJuly 11, 2023
  • What is Confidential Computing?July 11, 2023
  • How a MOSFET WorksJuly 10, 2023
PC users can consult Corrine Chorney for Security.

Want to know more about us?

Read Notability and Mentions & Our Setup.

Copyright © 2023 - The Customize Windows | dESIGNed by The Customize Windows

Copyright  · Privacy Policy  · Advertising Policy  · Terms of Service  · Refund Policy