ports/51647: NEW PORT: pglod - inserts web logs into a PostgreSQL database
allie at pajunas.com
allie at pajunas.com
Thu May 1 05:00:27 UTC 2003
>Number: 51647
>Category: ports
>Synopsis: NEW PORT: pglod - inserts web logs into a PostgreSQL database
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Wed Apr 30 22:00:25 PDT 2003
>Closed-Date:
>Last-Modified:
>Originator: Allie Micka
>Release: FreeBSD 4.6-RELEASE i386
>Organization:
pajunas interactive, inc.
>Environment:
System: FreeBSD yooden.pajunas.net 4.6-RELEASE FreeBSD 4.6-RELEASE #0: Wed Apr 25 00:44:13 CDT 2001 root at zaphod.pajunas.net:/usr/src/sys/compile/YOODEN i386
>Description:
pglogd sends web request log entries to a PostgreSQL database
>How-To-Repeat:
>Fix:
# This is a shell archive. Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file". Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
# pglogd
# pglogd/Makefile
# pglogd/distinfo
# pglogd/pkg-descr
# pglogd/pkg-plist
# pglogd/files
# pglogd/files/patch-Makefile
# pglogd/files/020.pglogd.sh
# pglogd/pkg-message
#
echo c - pglogd
mkdir -p pglogd > /dev/null 2>&1
echo x - pglogd/Makefile
sed 's/^X//' >pglogd/Makefile << 'END-of-pglogd/Makefile'
X# New ports collection makefile for: pglogd
X# Date created: 23 April 2003
X# Whom: Allie Micka <allie at pajunas.com>
X#
X# $FreeBSD$
X#
X
XPORTNAME= pglogd
XPORTVERSION= 2.2b
XCATEGORIES= www databases
XMASTER_SITES= http://www.digitalstratum.com/pglogd/
XDISTNAME= pglogd-2.2beta
X
XMAINTAINER= allie at pajunas.com
XCOMMENT= Sends web server log entries to a PostgreSQL database
X
XLIB_DEPENDS= pq.3:${PORTSDIR}/databases/postgresql7
X
Xpost-extract:
X @${SED} -e "s=%%PREFIX%%=${PREFIX}=g" ${FILESDIR}/020.pglogd.sh \
X > ${WRKSRC}/020.pglogd.sh
X
Xpost-install:
X ${INSTALL_DATA} ${WRKSRC}/020.pglogd.sh ${PREFIX}/etc/rc.d/020.pglogd.sh
X @if [ ! -f ${PREFIX}/etc/rc.d/020.pglogd.sh ]; then \
X ${ECHO} "Installing ${PREFIX}/etc/rc.d/020.pglogd.sh startup file."; \
X ${INSTALL_SCRIPT} ${WRKSRC}/020.pglogd.sh ${PREFIX}/etc/rc.d/020.pglogd.sh; \
X fi
X @${CAT} ${PKGMESSAGE}
X
X.include <bsd.port.mk>
END-of-pglogd/Makefile
echo x - pglogd/distinfo
sed 's/^X//' >pglogd/distinfo << 'END-of-pglogd/distinfo'
XMD5 (pglogd-2.2beta.tar.gz) = af94fba991e7bf432f8464f787319708
END-of-pglogd/distinfo
echo x - pglogd/pkg-descr
sed 's/^X//' >pglogd/pkg-descr << 'END-of-pglogd/pkg-descr'
XpgLOGd, simply put, is a program that takes web server log entries and
Xsends them to a database. It is called pgLOGd because of the database
Xit was designed to function with, PostgreSQL.
X
XIt is fast, robust and features fall-back-logging to a text file. It
Xis flexible and typically uses less than 128K of memory.
X
XWWW: http://www.digitalstratum.com/pglogd/
END-of-pglogd/pkg-descr
echo x - pglogd/pkg-plist
sed 's/^X//' >pglogd/pkg-plist << 'END-of-pglogd/pkg-plist'
Xbin/pglogd
Xshare/pglogd/pglogd_tables.sql
Xshare/pglogd/queries.txt
Xshare/pglogd/weblog_daily.sql
Xshare/pglogd/README
Xshare/pglogd/CHANGELOG
Xetc/pglogd.conf.sample
Xetc/rc.d/020.pglogd.sh
X at dirrm share/pglogd
X at unexec if cmp -s %D/etc/rc.d/020.pglogd.sh %D/etc/rc.d/020.pglogd.sh-dist; then rm -f %D/etc/rc.d/020.pglogd.sh; fi
X at exec [ -f %B/020.pglogd.sh ] || ( cp %B/%f %B/020.pglogd.sh; chmod 755 %B/020.pglogd.sh )
END-of-pglogd/pkg-plist
echo c - pglogd/files
mkdir -p pglogd/files > /dev/null 2>&1
echo x - pglogd/files/patch-Makefile
sed 's/^X//' >pglogd/files/patch-Makefile << 'END-of-pglogd/files/patch-Makefile'
X--- Makefile Sat Jan 19 11:05:45 2002
X+++ Makefile.new Wed Apr 23 17:28:05 2003
X@@ -31,7 +31,7 @@
X #
X
X # Change this to your PostgreSQL install directroy.
X-PGDIR = /usr/local/pgsql
X+PGDIR = ${PREFIX}
X
X
X ### NO NEED TO EDIT BELOW THIS LINE ###
X@@ -56,3 +56,13 @@
X
X pglog_dump : ${SRCS_DUMP} ${HDRS_DUMP}
X ${CC} ${COPTS} -o $@ ${CFLAGS} ${LDFLAGS} ${LIBS} ${SRCS_DUMP}
X+
X+install :
X+ install -m 750 -s -c pglogd ${PREFIX}/bin/
X+ install -m 755 -d ${PREFIX}/share/pglogd/
X+ install -m 644 -c pglogd_tables.sql ${PREFIX}/share/pglogd/pglogd_tables.sql
X+ install -m 644 -c README ${PREFIX}/share/pglogd/README
X+ install -m 644 -c CHANGELOG ${PREFIX}/share/pglogd/CHANGELOG
X+ install -m 644 -c weblog_daily.sql ${PREFIX}/share/pglogd/weblog_daily.sql
X+ install -m 644 -c queries.txt ${PREFIX}/share/pglogd/queries.txt
X+ install -m 644 -c pglogd.conf ${PREFIX}/etc/pglogd.conf.sample
END-of-pglogd/files/patch-Makefile
echo x - pglogd/files/020.pglogd.sh
sed 's/^X//' >pglogd/files/020.pglogd.sh << 'END-of-pglogd/files/020.pglogd.sh'
X#!/bin/sh
XCONFIG=%%PREFIX%%/pglogd.conf
XPID=/var/run/pglogd.pid
X
Xcase "$1" in
Xstart)
X [ -r ${CONFIG} ] && [ -x %%PREFIX%%/bin/pglogd ] && %%PREFIX%%/bin/pglogd -s -c ${CONFIG} > /dev/null && echo -n ' pglogd'
X ;;
Xstop)
X [ -r ${PID} ] && kill `cat ${PID}` > /dev/null && echo -n ' pglogd'
X ;;
X*)
X echo "Usage: `basename $0` {start|stop}" >&2
X ;;
Xesac
X
Xexit 0
END-of-pglogd/files/020.pglogd.sh
echo x - pglogd/pkg-message
sed 's/^X//' >pglogd/pkg-message << 'END-of-pglogd/pkg-message'
X=========================================================
XYou need to create a PostgreSQL database for your logs:
X
X # su - postgres
X $ createdb pglogd
X $ psql pglogd < /usr/local/share/pglogd/pglogd_tables.sql
X $ exit
X
Xand copy /usr/local/etc/pglogd.conf.sample to pglogd.conf
X
Xpglogd can then be started with:
X
X # /usr/local/etc/rc.d/020.pglogd.sh start
X
XRead the complete documentation on configuring pglogd
Xand apache at http://www.digitalstratum.com/pglogd/
X=========================================================
END-of-pglogd/pkg-message
exit
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list