Posts Tagged ‘nostalgia’

Fun with Apache / Nginx Webserver log – Visualize webserver access log in real time

Friday, July 18th, 2014

visualize-graphically-web-server-access-log-logstalgia-nginx-apache-log-visualize-in-gnu-linux-and-windows
If you're working in a hosting company and looking for a graphical way to Visualize access to your Linux webservers – (Apache, Nginx, Lighttpd) you will be happy to learn about Logstalgia's existence. Logstalgia is very useful if you need to convince your Boss / company clients that the webservers are exceeding the CPU / Memory hardware limits physically servers can handle. Even if you don't have to convince anyone of anything logstalgia is cool to run if you want to impress a friend and show off your 1337 4Dm!N Sk!11Z 🙂 Nostalgia is much more pleasent way to keep an eye on your Webserver log files in real time better than (tail -f)

The graphical output of nostalgia is a pong-like battle game between webserver and never ending chain of web requests.

This is the official website description of Logstalgia:
 

Logstalgia is a website traffic visualization that replays web-server access logs as a pong-like battle between the web server and an never ending torrent of requests. Requests appear as colored balls (the same color as the host) which travel across the screen to arrive at the requested location. Successful requests are hit by the paddle while unsuccessful ones (eg 404 – File Not Found) are missed and pass through. The paths of requests are summarized within the available space by identifying common path prefixes. Related paths are grouped together under headings. For instance, by default paths ending in png, gif or jpg are grouped under the heading Images. Paths that don’t match any of the specified groups are lumped together under a Miscellaneous section.


To install Logstalgia on Debian / Ubuntu Linux there is a native package, so to install it run the usual:

apt-get --yes install logstalgia

Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
logstalgia
0 upgraded, 1 newly installed, 0 to remove and 4 not upgraded.
Need to get 161 kB of archives.
After this operation, 1,102 kB of additional disk space will be used.
Get:1 http://mirrors.kernel.org/debian/ stable/main logstalgia amd64 1.0.0-1+b1 [161 kB]
Fetched 161 kB in 2s (73.9 kB/s)
Selecting previously deselected package logstalgia.
(Reading database ... 338532 files and directories currently installed.)
Unpacking logstalgia (from .../logstalgia_1.0.0-1+b1_amd64.deb) ...
Processing triggers for man-db ...
Setting up logstalgia (1.0.0-1+b1) ...


Logstalgia is easily installable from source code on non-Debian Linux distributions too, to install it on any non-debian Linux distrubution do:

cd /usr/local/src/ wget https://logstalgia.googlecode.com/files/logstalgia-1.0.5.tar.gz
 

–2014-07-18 13:53:23–  https://logstalgia.googlecode.com/files/logstalgia-1.0.3.tar.gz
Resolving logstalgia.googlecode.com… 74.125.206.82, 2a00:1450:400c:c04::52
Connecting to logstalgia.googlecode.com|74.125.206.82|:443… connected.
HTTP request sent, awaiting response… 200 OK
Length: 841822 (822K) [application/x-gzip]
Saving to: `logstalgia-1.0.3.tar.gz'

100%[=================================>] 841,822     1.25M/s   in 0.6s

2014-07-18 13:53:24 (1.25 MB/s) – `logstalgia-1.0.3.tar.gz' saved [841822/841822]

Untar the archive with:
 

tar -zxvf logstalgia-1.0.5.tar.gz

Compile and install it:

cd logstalgia
./configure
make
make install

 

How to use LogStalgia?

Syntax is pretty straight forward just pass the Nginx / Apache

Process Debian Linux Apache logs:

logstalgia /var/log/apache2/access.log


Process CentoS, Redhat etc. RPM based logs:

logstalgia /var/log/httpd/access.log
To process webserver log in real time with logstalgia:

tail -f /var/log/httpd/access_log | logstalgia -

To make logstalgia visualize log output you will need to have access to server physical console screen. As physical access is not possible on most dedicated servers – already colocated in some Datacenter. You can also use a local Linux PC / notebook installed with nostalgia to process webserver access logs remotely like so:

logstalgia-visualize-your-apache-nginx-lighttpd-logs-graphically-in-x-and-console-locally-and-remotely

ssh hipo@www.pc-freak.net tail -f /var/log/apache2/access.log | logstalgia --sync

Note! If you get an empty output from logstalgia, this is because of permission issues, in this example my user hipo is added in www-data Apache group – if you want to add your user to have access like me, issue on remote ssh server):
 

addgroup hipo www-data


Alterantively you can login with ssh with root, e.g. ssh root@www.pc-freak.net

If you're having a GNOME / KDE X environment on the Linux machine from which you're ssh-ing Logstalgia will visualize Webserver access.log requests inside a new X Window otherwise if you're on a Linux with just a console with no Xserver graphics it will visualize graphically web log statistics using console svgalib .

 

If you're planning to save output from nostalgia visualization screen for later use – lets say you have to present to your CEO statistics about all your servers  Webservers logs you can save nostalgia produced video in .ppm (netpbm) format.

Whether you have physical console access to the server:

logstalgia -1280x720 --output-ppm-stream output.ppm /var/log/httpd/access.log

Or if you just a have a PC with Linux and you want to save visualized content of access.log remotely:

ssh hipo@www.pc-freak.net tail -f /var/log/nginx/pc-freak-access.log | logstalgia -1280x720 --output-ppm-stream --sync output.ppm

 

ssh user@server1.cyberciti.biz tail -f /var/log/nginx/www.cyberciti.biz_access.log | logstalgia -1280x720 --output-ppm-stream --sync output.ppm

To make produced .ppm later usable you can use ffmpeg to convert to .mp4:

ffmpeg -y -r 60 -f image2pipe -vcodec ppm -i output.ppm -vcodec libx264 -preset ultrafast -pix_fmt yuv420p -crf 1 -threads 0 -bf 0 nginx.server.log.mp4

Then to play the videos use any video player, I usually use vlc and mplayer.

For complete info on Nostalgia – website access log visualizercheck home page on googlecode

If you're lazy to install Logstalgia, here is Youtube video made from its output:

Enjoy 🙂

GPL Arcade Volleyball – DOS Volleyball oldschool game remake for GNU / Linux

Wednesday, December 21st, 2011

Do you remember that oldschool Arcade VolleyBall game which was so popular on 16 bit (8086 XT) computers.
I remember this game from the years I was 12 years old, back in the days where we the gamers distributed all the DOS games on 360 KB 5.25" diskettes

I was looking over the games available to install on my Debian GNU / Linux today just to be happily suprised to find GPL Arcade Volleyball an identical game remake of the old Arcade Volleyball 8086 classic freeware game.

I remember we spend many hours with friends playing on the old Manifactured in Bulgaria Pravetz 16! computers
During communism and post communism Pravetz was the only computer brand we could buy from the market, as there was limitations on the exported and imported tech equipment within the USSR union.
Pravetz computers are a literal remake of 16 bit IBM 8086 computers and the computer design and integrals was stolen from IBM 16 bit 8086 / 8088 PC architecture

Arcade Volleyball has set a mark on my generation and I believe many people will remember the times this game was a hit with a bit of Nostalgia 😉
In the Game GPL Arcade Volleyball Debian GNU / Linux

Besides being an identical remake of PC Arcade Volleyball , GPL Arcade Volleyball is even expanded as it includes extra features which the original game lacked. Game includes:

  • Network Volleyball client / server Game (up to 4 players)
  • 6 Game Themes which completely change the game look & feel to be modernistic

Here are few GAV screenshots of the different existing game Themes:

Screenshot GPL Arcade VolleyBall Yisus

GPL Arcade Volleyball Yisus theme gameplay GNU / Linux
Yisus GAV Theme gameplay screenshot

GPL Arcade Volleyball Unnamed Theme Screenshot

GPL Arcade Volleyball unnamed Gameplay Theme Debian
GAV – Unnamed Theme Gameplay

Screenshot GAV FABeach gameplay
GAV – FaBeach Theme Gameplay

GAV supports both Window and fullscreen modes. To enable Fullscreen mode, while inside the game use:

Extra -> Fullscreen (Yes)

Saving preferences is also something which I if I recall correctly the original game lacked. This is done by navigating to:

Extra -> Save Preferences

GAV is said to support Joystick in resemblance to the original DOS game, though I've never tested it with a joy.

One of the greatest GAV game (hacks) is the Inverted Theme. Selecting it inverts the order in the game, where the game player becomes the volleyball ball and the ball becomes the player 😉

GPL Arcade Volleyball Arcade Inverted Theme - remake of DOS Volleyball Arcade
GAV does not yet not have a Free / Open / Net BSD port as far as I currently see, anyways since the game is Free Software probably soon a port will be available for BSDs as well.
The default GAV game controls are a bit untraditional. By default the one player game starts you play Volleyball game player positioned on the left.

For left player the default control keys are:
 

  • z – move player left
  • c – move player right
  • left shift – jump

Right player controls are:
 

  • Left – left (arrow key)
  • right – right (arrow key)
  • jump – up cursor key

GAV supports also a shortcut key for switching between windowed and full screen game mode by pressing F10
Installing the game on Debian and Ubuntu Linuces is done with:

linux:~# apt-get --yes install gav

Unfortunately gav does not have a definition to be added to GNOME or KDE Applications menus, thus to start the game after installed one has to do it manually by typing either in gnome RUN (Alt+F2) or on command line:

linux:~$ gav

Happy playing 😉