diff -urPN /var/empty/LICENSE 0.1.0/LICENSE --- /var/empty/LICENSE Thu Jan 1 01:00:00 1970 +++ 0.1.0/LICENSE Mon Aug 10 21:15:30 2020 @@ -0,0 +1,15 @@ +ISC License + +Copyright (c) 2020, Adrian Emil Grigore + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff -urPN /var/empty/Makefile 0.1.0/Makefile --- /var/empty/Makefile Thu Jan 1 01:00:00 1970 +++ 0.1.0/Makefile Mon Aug 10 21:15:30 2020 @@ -0,0 +1,45 @@ +PREFIX = /usr/local +MANPREFIX = $(PREFIX)/share/man + +BIN = \ + cblv \ + cblu \ + cblp \ + cblr \ + cblvv \ + cblvu \ + cblvp \ + cblvr +MAN = \ + cblv.1 \ + cblu.1 \ + cblp.1 \ + cblr.1 \ + cblvv.1 \ + cblvu.1 \ + cblvp.1 \ + cblvr.1 + +install: + mkdir -p $(DESTDIR)$(PREFIX)/bin/ + mkdir -p $(DESTDIR)$(PREFIX)/share/cbl + mkdir -p $(DESTDIR)$(MANPREFIX)/man1/ + cp -f $(BIN) $(DESTDIR)$(PREFIX)/bin/ + cp -r share/*.awk $(DESTDIR)$(PREFIX)/share/cbl + cp -f $(MAN) $(DESTDIR)$(MANPREFIX)/man1/ + for bin in $(BIN); do \ + chmod 755 $(DESTIR)$(PREFIX)/bin/$$bin; \ + done + for man in $(MAN); do \ + chmod 644 $(DESTDIR)$(MANPREFIX)/man1/$$man; \ + done + + +uninstall: + rm -rf $(DESTDIR$(PREFIX)/share/cbl + for bin in $(BIN); do \ + rm -f $(DESTDIR)$(PREFIX)/bin/$$bin; \ + done + for man in $(MAN); do \ + rm -f $(MANPREFIX)/man1/$$man; \ + done diff -urPN /var/empty/README 0.1.0/README --- /var/empty/README Thu Jan 1 01:00:00 1970 +++ 0.1.0/README Mon Aug 10 21:15:30 2020 @@ -0,0 +1,508 @@ +# cbl + +combined log + +## cblv(1) + +### NAME + +**cblv** - combined log views + +### SYNOPSIS + +**cblv** +\[*file ...*] + +### DESCRIPTION + +The +**cblv** +utility reads +each +\[*file ...*] +in +*Combined Log Format* +and prints only the +*views* +to standard output. + +*views* +are defined as +*GET* +requests +to paths ending in +*/* +or +*.html* +that returned a +*200* +HTTP response status code. + +If +\[*file ...*] +is omitted, +**cblv** +reads from standard input. + +### EXIT STATUS + +The **cblv** utility exits 0 on success, and >0 if an error occurs. + +### EXAMPLES + +Print all +*views* +from +*/var/www/logs/access.log:* + + $ cblv /var/www/logs/access.log + +### SEE ALSO + +awk(1) +httpd(8) +httpd.conf(5) +clv(1) + +## cblu(1) + +### NAME + +**cblu** - combined log uniques + +### SYNOPSIS + +**cblu** +\[*file ...*] + +### DESCRIPTION + +The +**cblu** +utility reads +each +\[*file ...*] +in +*Combined Log Format* +and prints only the +*uniques* +to standard output. + +*uniques* +are defined as unique remote hosts +that made at least one +*GET* +request to paths ending in +*/* +or +*.html* +that returned a +*200* +HTTP response status code. + +If +\[*file ...*] +is omitted, +**cblu** +reads from standard input. + +### EXIT STATUS + +The **cblu** utility exits 0 on success, and >0 if an error occurs. + +### EXAMPLES + +Print all +*uniques* +from +*/var/www/logs/access.log:* + + $ cblu /var/www/logs/access.log + +### SEE ALSO + +awk(1) +httpd(8) +httpd.conf(5) +clu(1) + +## cblp(1) + +### NAME + +**cblp** - combined log pages + +### SYNOPSIS + +**cblp** +\[*file ...*] + +### DESCRIPTION + +The +**cblp** +utility reads +each +\[*file ...*] +in +*Combined Log Format* +and prints a list of +*pages* +to standard output including the request count. + +*pages* +are defined as +*paths* +ending in +*/* +or +*.html* +to which +*GET* +requests have been made that returned a +*200* +HTTP response status code. + +If +\[*file ...*] +is omitted, +**cblp** +reads from standard input. + +### EXIT STATUS + +The **cblp** utility exits 0 on success, and >0 if an error occurs. + +### EXAMPLES + +Print all +*pages* +and their respective request count +from +*/var/www/logs/access.log*: + + $ cblp /var/www/logs/access.log + +### SEE ALSO + +awk(1) +httpd(8) +httpd.conf(5) +clp(1) + +## cblr(1) + +### NAME + +**cblr** - combined log referrer + +### SYNOPSIS + +**cblr** +\[*file ...*] + +### DESCRIPTION + +The +**cblr** +utility reads +each +\[*file ...*] +in +*Combined Log Format* +and prints a list of +*referrers* +to standard output including the request count. + +*referrers* +are defined as the address of the webpage which is linked to a +*path* +ending in +*/* +or +*.html* +to which +*GET* +requests have been made that returned a +*200* +HTTP response status code. + +If +\[*file ...*] +is omitted, +**cblr** +reads from standard input. + +### EXIT STATUS + +The **cblr** utility exits 0 on success, and >0 if an error occurs. + +### EXAMPLES + +Print all +*referrers* +and their respective request count +from +*/var/www/logs/access.log*: + + $ cblr /var/www/logs/access.log + +### SEE ALSO + +awk(1) +httpd(8) +httpd.conf(5) + +## cblvv(1) + +### NAME + +**cblvv** - combined log (virtual host) views + +### SYNOPSIS + +**cblvv** +\[*file ...*] + +### DESCRIPTION + +The +**cblvv** +utility reads +each +\[*file ...*] +in +*Combined Log Format with Virtual Host* +and prints only the +*views* +to standard output. + +*views* +are defined as +*GET* +requests to paths ending in +*/* +or +*.html* +that returned a +*200* +HTTP response status code. + +If +\[*file ...*] +is omitted, +**cblvv** +reads from standard input. + +### EXIT STATUS + +The **cblvv** utility exits 0 on success, and >0 if an error occurs. + +### EXAMPLES + +Print all +*views* +from +*/var/www/logs/access.log:* + + $ cblvv /var/www/logs/access.log + +### SEE ALSO + +awk(1) +httpd(8) +httpd.conf(5) +clv(1) + +## cblvu(1) + +### NAME + +**cblvu** - combined log (virtual host) uniques + +### SYNOPSIS + +**cblvu** +\[*file ...*] + +### DESCRIPTION + +The +**cblvu** +utility reads +each +\[*file ...*] +in +*Combined Log Format with Virtual Hosts* +and prints only the +*uniques* +to standard output. + +*uniques* +to standard output. + +*uniques* +are defined as unique remote hosts +that made at least one +*GET* +request +for files with an +*.html* +extension, including the +*/* +path that returned a +*200* +HTTP response status code. + +If +\[*file ...*] +is omitted, +**cblvu** +reads from standard input. + +### EXIT STATUS + +The **cblvu** utility exits 0 on success, and >0 if an error occurs. + +### EXAMPLES + +Print all +*uniques* +from +*/var/www/logs/access.log:* + + $ cblvu /var/www/logs/access.log + +### SEE ALSO + +awk(1) +httpd(8) +httpd.conf(5) +clu(1) + +## cblvp(1) + +### NAME + +**cblvp** - combined log (virtual host) pages + +### SYNOPSIS + +**cblvp** +\[*file ...*] + +### DESCRIPTION + +The +**cblvp** +utility reads +each +\[*file ...*] +in +*Combined Log Format with Virtual Host* +and prints a list of +*pages* +to standard output including the request count. + +*pages* +are defined as +*paths* +ending in +*/* +or +*.html* +to which +*GET* +requests have been made that returned a +*200* +HTTP response status code. + +If +\[*file ...*] +is omitted, +**cblvp** +reads from standard input. + +### EXIT STATUS + +The **cblvp** utility exits 0 on success, and >0 if an error occurs. + +### EXAMPLES + +Print all +*pages* +and their respective request count +from +*/var/www/logs/access.log*: + + $ cblvp /var/www/logs/access.log + +### SEE ALSO + +awk(1) +httpd(8) +httpd.conf(5) +clp(1) + +## cblvr(1) + +### NAME + +**cblvr** - combined log (virtual host) referrer + +### SYNOPSIS + +**cblvr** +\[*file ...*] + +### DESCRIPTION + +The +**cblvr** +utility reads +each +\[*file ...*] +in +*Combined Log Format Virtual Host* +and prints a list of +*referrers* +to standard output including the request count. + +*referrers* +are defined as the address of the webpage which is linked to a +*path* +ending in +*/* +or +*.html* +to which +*GET* +requests have been made that returned a +*200* +HTTP response status code. + +If +\[*file ...*] +is omitted, +**cblvr** +reads from standard input. + +### EXIT STATUS + +The **cblvr** utility exits 0 on success, and >0 if an error occurs. + +### EXAMPLES + +Print all +*referrers* +and their respective request count +from +*/var/www/logs/access.log*: + + $ cblvr /var/www/logs/access.log + +### SEE ALSO + +awk(1) +httpd(8) +httpd.conf(5) diff -urPN /var/empty/cblp 0.1.0/cblp --- /var/empty/cblp Thu Jan 1 01:00:00 1970 +++ 0.1.0/cblp Mon Aug 10 21:15:30 2020 @@ -0,0 +1,6 @@ +#!/bin/sh + +awk \ +-f "${CLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cl}"/c.awk \ +-f "${CBLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cbl}"/cb.awk \ +-f "${CLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cl}"/p.awk "$@" diff -urPN /var/empty/cblp.1 0.1.0/cblp.1 --- /var/empty/cblp.1 Thu Jan 1 01:00:00 1970 +++ 0.1.0/cblp.1 Mon Aug 10 21:15:30 2020 @@ -0,0 +1,55 @@ +.Dd Aug 02, 2020 +.Dt cblp 1 +.Os +.Sh NAME +.Nm cblp +.Nd combined log pages +.Sh SYNOPSIS +.Nm cblp +.Op Ar +.Sh DESCRIPTION +The +.Nm +utility reads +each +.Op Ar +in +.Em Combined Log Format +and prints a list of +.Em pages +to standard output including the request count. +.Pp +.Em pages +are defined as +.Em paths +ending in +.Pa / +or +.Pa .html +to which +.Em GET +requests have been made that returned a +.Em 200 +HTTP response status code. +.Pp +If +.Op Ar +is omitted, +.Nm +reads from standard input. +.Sh EXIT STATUS +.Ex -std +.Sh EXAMPLES +Print all +.Em pages +and their respective request count +from +.Pa /var/www/logs/access.log : +.Pp +.Dl $ cblp /var/www/logs/access.log +.Pp +.Sh SEE ALSO +.Xr awk 1 +.Xr httpd 8 +.Xr httpd.conf 5 +.Xr clp 1 diff -urPN /var/empty/cblr 0.1.0/cblr --- /var/empty/cblr Thu Jan 1 01:00:00 1970 +++ 0.1.0/cblr Mon Aug 10 21:15:30 2020 @@ -0,0 +1,6 @@ +#!/bin/sh + +awk \ +-f "${CLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cl}"/c.awk \ +-f "${CBLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cbl}"/cb.awk \ +-f "${CBLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cbl}"/r.awk "$@" diff -urPN /var/empty/cblr.1 0.1.0/cblr.1 --- /var/empty/cblr.1 Thu Jan 1 01:00:00 1970 +++ 0.1.0/cblr.1 Mon Aug 10 21:15:30 2020 @@ -0,0 +1,54 @@ +.Dd Aug 02, 2020 +.Dt cblr 1 +.Os +.Sh NAME +.Nm cblr +.Nd combined log referrer +.Sh SYNOPSIS +.Nm cblr +.Op Ar +.Sh DESCRIPTION +The +.Nm +utility reads +each +.Op Ar +in +.Em Combined Log Format +and prints a list of +.Em referrers +to standard output including the request count. +.Pp +.Em referrers +are defined as the address of the webpage which is linked to a +.Em path +ending in +.Pa / +or +.Pa .html +to which +.Em GET +requests have been made that returned a +.Em 200 +HTTP response status code. +.Pp +If +.Op Ar +is omitted, +.Nm +reads from standard input. +.Sh EXIT STATUS +.Ex -std +.Sh EXAMPLES +Print all +.Em referrers +and their respective request count +from +.Pa /var/www/logs/access.log : +.Pp +.Dl $ cblr /var/www/logs/access.log +.Pp +.Sh SEE ALSO +.Xr awk 1 +.Xr httpd 8 +.Xr httpd.conf 5 diff -urPN /var/empty/cblu 0.1.0/cblu --- /var/empty/cblu Thu Jan 1 01:00:00 1970 +++ 0.1.0/cblu Mon Aug 10 21:15:30 2020 @@ -0,0 +1,6 @@ +#!/bin/sh + +awk \ +-f "${CLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cl}"/c.awk \ +-f "${CBLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cbl}"/cb.awk \ +-f "${CLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cl}"/u.awk "$@" diff -urPN /var/empty/cblu.1 0.1.0/cblu.1 --- /var/empty/cblu.1 Thu Jan 1 01:00:00 1970 +++ 0.1.0/cblu.1 Mon Aug 10 21:15:30 2020 @@ -0,0 +1,53 @@ +.Dd Aug 02, 2020 +.Dt cblu 1 +.Os +.Sh NAME +.Nm cblu +.Nd combined log uniques +.Sh SYNOPSIS +.Nm cblu +.Op Ar +.Sh DESCRIPTION +The +.Nm +utility reads +each +.Op Ar +in +.Em Combined Log Format +and prints only the +.Em uniques +to standard output. +.Pp +.Em uniques +are defined as unique remote hosts +that made at least one +.Em GET +request to paths ending in +.Pa / +or +.Pa .html +that returned a +.Em 200 +HTTP response status code. +.Pp +If +.Op Ar +is omitted, +.Nm +reads from standard input. +.Sh EXIT STATUS +.Ex -std +.Sh EXAMPLES +Print all +.Em uniques +from +.Pa /var/www/logs/access.log: +.Pp +.Dl $ cblu /var/www/logs/access.log +.Pp +.Sh SEE ALSO +.Xr awk 1 +.Xr httpd 8 +.Xr httpd.conf 5 +.Xr clu 1 diff -urPN /var/empty/cblv 0.1.0/cblv --- /var/empty/cblv Thu Jan 1 01:00:00 1970 +++ 0.1.0/cblv Mon Aug 10 21:15:30 2020 @@ -0,0 +1,7 @@ +#!/bin/sh + +awk \ +-f "${CLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cl}"/c.awk \ +-f "${CBLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cbl}"/cb.awk \ +-f "${FLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/fl}"/f.awk \ +-f "${CLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cl}"/v.awk "$@" diff -urPN /var/empty/cblv.1 0.1.0/cblv.1 --- /var/empty/cblv.1 Thu Jan 1 01:00:00 1970 +++ 0.1.0/cblv.1 Mon Aug 10 21:15:30 2020 @@ -0,0 +1,53 @@ +.Dd Aug 02, 2020 +.Dt cblv 1 +.Os +.Sh NAME +.Nm cblv +.Nd combined log views +.Sh SYNOPSIS +.Nm cblv +.Op Ar +.Sh DESCRIPTION +The +.Nm +utility reads +each +.Op Ar +in +.Em Combined Log Format +and prints only the +.Em views +to standard output. +.Pp +.Em views +are defined as +.Em GET +requests +to paths ending in +.Pa / +or +.Pa .html +that returned a +.Em 200 +HTTP response status code. +.Pp +If +.Op Ar +is omitted, +.Nm +reads from standard input. +.Sh EXIT STATUS +.Ex -std +.Sh EXAMPLES +Print all +.Em views +from +.Pa /var/www/logs/access.log: +.Pp +.Dl $ cblv /var/www/logs/access.log +.Pp +.Sh SEE ALSO +.Xr awk 1 +.Xr httpd 8 +.Xr httpd.conf 5 +.Xr clv 1 diff -urPN /var/empty/cblvp 0.1.0/cblvp --- /var/empty/cblvp Thu Jan 1 01:00:00 1970 +++ 0.1.0/cblvp Mon Aug 10 21:15:30 2020 @@ -0,0 +1,6 @@ +#!/bin/sh + +awk \ +-f "${CLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cl}"/cv.awk \ +-f "${CBLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cbl}"/cbv.awk \ +-f "${CLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cl}"/p.awk "$@" diff -urPN /var/empty/cblvp.1 0.1.0/cblvp.1 --- /var/empty/cblvp.1 Thu Jan 1 01:00:00 1970 +++ 0.1.0/cblvp.1 Mon Aug 10 21:15:30 2020 @@ -0,0 +1,55 @@ +.Dd Aug 02, 2020 +.Dt cblvp 1 +.Os +.Sh NAME +.Nm cblvp +.Nd combined log (virtual host) pages +.Sh SYNOPSIS +.Nm cblvp +.Op Ar +.Sh DESCRIPTION +The +.Nm +utility reads +each +.Op Ar +in +.Em Combined Log Format with Virtual Host +and prints a list of +.Em pages +to standard output including the request count. +.Pp +.Em pages +are defined as +.Em paths +ending in +.Pa / +or +.Pa .html +to which +.Em GET +requests have been made that returned a +.Em 200 +HTTP response status code. +.Pp +If +.Op Ar +is omitted, +.Nm +reads from standard input. +.Sh EXIT STATUS +.Ex -std +.Sh EXAMPLES +Print all +.Em pages +and their respective request count +from +.Pa /var/www/logs/access.log : +.Pp +.Dl $ cblvp /var/www/logs/access.log +.Pp +.Sh SEE ALSO +.Xr awk 1 +.Xr httpd 8 +.Xr httpd.conf 5 +.Xr clp 1 diff -urPN /var/empty/cblvr 0.1.0/cblvr --- /var/empty/cblvr Thu Jan 1 01:00:00 1970 +++ 0.1.0/cblvr Mon Aug 10 21:15:30 2020 @@ -0,0 +1,6 @@ +#!/bin/sh + +awk \ +-f "${CLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cl}"/cv.awk \ +-f "${CBLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cbl}"/cbv.awk \ +-f "${CBLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cbl}"/r.awk "$@" diff -urPN /var/empty/cblvr.1 0.1.0/cblvr.1 --- /var/empty/cblvr.1 Thu Jan 1 01:00:00 1970 +++ 0.1.0/cblvr.1 Mon Aug 10 21:15:30 2020 @@ -0,0 +1,54 @@ +.Dd Aug 02, 2020 +.Dt cblvr 1 +.Os +.Sh NAME +.Nm cblvr +.Nd combined log (virtual host) referrer +.Sh SYNOPSIS +.Nm cblvr +.Op Ar +.Sh DESCRIPTION +The +.Nm +utility reads +each +.Op Ar +in +.Em Combined Log Format Virtual Host +and prints a list of +.Em referrers +to standard output including the request count. +.Pp +.Em referrers +are defined as the address of the webpage which is linked to a +.Em path +ending in +.Pa / +or +.Pa .html +to which +.Em GET +requests have been made that returned a +.Em 200 +HTTP response status code. +.Pp +If +.Op Ar +is omitted, +.Nm +reads from standard input. +.Sh EXIT STATUS +.Ex -std +.Sh EXAMPLES +Print all +.Em referrers +and their respective request count +from +.Pa /var/www/logs/access.log : +.Pp +.Dl $ cblvr /var/www/logs/access.log +.Pp +.Sh SEE ALSO +.Xr awk 1 +.Xr httpd 8 +.Xr httpd.conf 5 diff -urPN /var/empty/cblvu 0.1.0/cblvu --- /var/empty/cblvu Thu Jan 1 01:00:00 1970 +++ 0.1.0/cblvu Mon Aug 10 21:15:30 2020 @@ -0,0 +1,6 @@ +#!/bin/sh + +awk \ +-f "${CLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cl}"/cv.awk \ +-f "${CBLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cbl}"/cbv.awk \ +-f "${CLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cl}"/u.awk "$@" diff -urPN /var/empty/cblvu.1 0.1.0/cblvu.1 --- /var/empty/cblvu.1 Thu Jan 1 01:00:00 1970 +++ 0.1.0/cblvu.1 Mon Aug 10 21:15:30 2020 @@ -0,0 +1,57 @@ +.Dd Aug 02, 2020 +.Dt cblvu 1 +.Os +.Sh NAME +.Nm cblvu +.Nd combined log (virtual host) uniques +.Sh SYNOPSIS +.Nm cblvu +.Op Ar +.Sh DESCRIPTION +The +.Nm +utility reads +each +.Op Ar +in +.Em Combined Log Format with Virtual Hosts +and prints only the +.Em uniques +to standard output. +.Pp +.Em uniques +to standard output. +.Pp +.Em uniques +are defined as unique remote hosts +that made at least one +.Em GET +request +for files with an +.Pa .html +extension, including the +.Pa / +path that returned a +.Em 200 +HTTP response status code. +.Pp +If +.Op Ar +is omitted, +.Nm +reads from standard input. +.Sh EXIT STATUS +.Ex -std +.Sh EXAMPLES +Print all +.Em uniques +from +.Pa /var/www/logs/access.log: +.Pp +.Dl $ cblvu /var/www/logs/access.log +.Pp +.Sh SEE ALSO +.Xr awk 1 +.Xr httpd 8 +.Xr httpd.conf 5 +.Xr clu 1 diff -urPN /var/empty/cblvv 0.1.0/cblvv --- /var/empty/cblvv Thu Jan 1 01:00:00 1970 +++ 0.1.0/cblvv Mon Aug 10 21:15:30 2020 @@ -0,0 +1,6 @@ +#!/bin/sh + +awk \ +-f "${CLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cl}"/cv.awk \ +-f "${CBLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cbl}"/cbv.awk \ +-f "${CLSHAREPATH:-$(dirname "$(realpath "$0")")/../share/cl}"/v.awk "$@" diff -urPN /var/empty/cblvv.1 0.1.0/cblvv.1 --- /var/empty/cblvv.1 Thu Jan 1 01:00:00 1970 +++ 0.1.0/cblvv.1 Mon Aug 10 21:15:30 2020 @@ -0,0 +1,52 @@ +.Dd Aug 02, 2020 +.Dt cblvv 1 +.Os +.Sh NAME +.Nm cblvv +.Nd combined log (virtual host) views +.Sh SYNOPSIS +.Nm cblvv +.Op Ar +.Sh DESCRIPTION +The +.Nm +utility reads +each +.Op Ar +in +.Em Combined Log Format with Virtual Host +and prints only the +.Em views +to standard output. +.Pp +.Em views +are defined as +.Em GET +requests to paths ending in +.Pa / +or +.Pa .html +that returned a +.Em 200 +HTTP response status code. +.Pp +If +.Op Ar +is omitted, +.Nm +reads from standard input. +.Sh EXIT STATUS +.Ex -std +.Sh EXAMPLES +Print all +.Em views +from +.Pa /var/www/logs/access.log: +.Pp +.Dl $ cblvv /var/www/logs/access.log +.Pp +.Sh SEE ALSO +.Xr awk 1 +.Xr httpd 8 +.Xr httpd.conf 5 +.Xr clv 1 diff -urPN /var/empty/share/cb.awk 0.1.0/share/cb.awk --- /var/empty/share/cb.awk Thu Jan 1 01:00:00 1970 +++ 0.1.0/share/cb.awk Mon Aug 10 21:15:30 2020 @@ -0,0 +1,5 @@ +{ +R=$11 +u=uq[6] +split(u, ua, " ") +} diff -urPN /var/empty/share/cbv.awk 0.1.0/share/cbv.awk --- /var/empty/share/cbv.awk Thu Jan 1 01:00:00 1970 +++ 0.1.0/share/cbv.awk Mon Aug 10 21:15:30 2020 @@ -0,0 +1,5 @@ +{ +R=$12 +u=a[6] +split(u, ua, " ") +} diff -urPN /var/empty/share/r.awk 0.1.0/share/r.awk --- /var/empty/share/r.awk Thu Jan 1 01:00:00 1970 +++ 0.1.0/share/r.awk Mon Aug 10 21:15:30 2020 @@ -0,0 +1,7 @@ +#!/usr/bin/awk -f + +{ ra[1] == "GET" && s == 200 && ra[2] ~ /\/$|\.html$/ && !rs[R]++ } + +END { + for (r in rs) print r" "rs[r] +}