diff options
Diffstat (limited to 'rubbos/app/tomcat-connectors-1.2.32-src/tools')
14 files changed, 0 insertions, 1796 deletions
diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/tools/dist/.htaccess b/rubbos/app/tomcat-connectors-1.2.32-src/tools/dist/.htaccess deleted file mode 100644 index 61a2d610..00000000 --- a/rubbos/app/tomcat-connectors-1.2.32-src/tools/dist/.htaccess +++ /dev/null @@ -1,19 +0,0 @@ -# Directives controlling the display of server-generated directory listings. -IndexOptions DescriptionWidth=34 -AddDescription "OpenPGP ASCII armored signature" .asc -AddDescription "MD5 checksum file" .md5 -AddDescription "SHA1 checksum file" .sha1 -AddDescription "SHA256 checksum file" .sha256 -AddDescription "ZIP compressed archive" .zip -AddDescription "GZIP compressed document" .gz -AddDescription "Unix tar archive" .tar -AddDescription "GZIP compressed tar archive" .tgz -AddDescription "plain text document" .txt -AddDescription "Unified diff patch" .diff -AddDescription "shared object file" .so -AddDescription "dynamically linked library" .dll -AddIcon /icons/generic.sec.gif .asc .key -AddIcon /icons/patch.gif .diff -AddIcon /icons/screw2.gif .md5 -AddIcon /icons/screw2.gif .sha1 -AddIcon /icons/screw2.gif .sha256 diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/tools/dist/HEADER.html b/rubbos/app/tomcat-connectors-1.2.32-src/tools/dist/HEADER.html deleted file mode 100644 index f8e90e6f..00000000 --- a/rubbos/app/tomcat-connectors-1.2.32-src/tools/dist/HEADER.html +++ /dev/null @@ -1,20 +0,0 @@ -<h1>Index of /dist/tomcat/tomcat-connectors/jk</h1> - -<h2>Apache Tomcat Connectors <u>Source Code</u> Distributions</h2> - -<p>This download page includes <strong>only the sources</strong> to compile - and build Apache Tomcat Connectors yourself with the proper tools. Download - the precompiled distribution for your platform from - <a href="binaries/">binaries/</a>. -</p> - -<h2>Important Notices</h2> - -<ul> -<li><a href="#mirrors">Download from your nearest mirror site!</a></li> -<li><a href="#binaries">Binary Releases</a></li> -<li><a href="#releases">Current Releases</a></li> -<li><a href="#archive">Older Releases</a></li> -<li><a href="#sig">PGP Signatures</a></li> -</ul> - diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/tools/dist/README.html b/rubbos/app/tomcat-connectors-1.2.32-src/tools/dist/README.html deleted file mode 100644 index 7f9ae7fb..00000000 --- a/rubbos/app/tomcat-connectors-1.2.32-src/tools/dist/README.html +++ /dev/null @@ -1,68 +0,0 @@ -<h2><a name="mirrors">Download from your - <a href="http://www.apache.org/dyn/closer.cgi/tomcat/tomcat-connectors/"> -nearest mirror site!</a></a></h2> - -<p>Do not download from www.apache.org. Please use a mirror site - to help us save apache.org bandwidth. - <a href="http://www.apache.org/dyn/closer.cgi/tomcat/tomcat-connectors/jk/"> - Go here to find your nearest mirror.</a> -</p> - -<h2><a name="binaries">Binary Releases</a></h2> -<p>Are available in the <a href="binaries/">binaries/</a> directory. - Every binary distribution contains an install script. See README - for details. -</p> - -<h2><a name="releases">Current Releases</a></h2> -<p>For details on current releases, please see the - <a href="http://tomcat.apache.org/download-connectors.cgi">Apache Tomcat - Connectors Download Page</a>. -</p> -<p>Note; the -src.zip versions of Apache Tomcat Connectors are nearly identical to the - .tar.gz versions. However, they offer the source files in DOS/Windows - CR/LF text format, and include the Winows build files. - These -src.zip files <strong>do NOT contain binaries!</strong> - See the <a href="binaries/windows/">binaries/windows/</a> - directory for the Windows binary distributions. -</p> - -<h2><a name="archive">Older Releases</a></h2> -<p>Only current, recommended releases are available on www.apache.org - and the mirror sites. Older releases can be obtained from the - <a href="http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/">archive site</a>. -</p> - -<h2><a name="sig">PGP Signatures</a></h2> -<p>All of the release distribution packages have been digitally signed - (using PGP or GPG) by the Apache Tomcat Group members that constructed them. - There will be an accompanying <SAMP><EM>distribution</EM>.asc</SAMP> file - in the same directory as the distribution. The PGP keys can be found - at the MIT key repository and within this project's - <a href="http://www.apache.org/dist/tomcat/tomcat-connectors/KEYS">KEYS file</a>. -</p> - -<p>Always use the signature files to verify the authenticity - of the distribution, <i>e.g.</i>,</p> - -<pre> -% pgpk -a KEYS -% pgpv tomcat-connectors-1.2.32-src.tar.gz.asc -<i>or</i>, -% pgp -ka KEYS -% pgp tomcat-connectors-1.2.32-src.tar.gz.asc -<i>or</i>, -% gpg --import KEYS -% gpg --verify tomcat-connectors-1.2.32-src.tar.gz.asc -</pre> - -<p>We offer MD5 and SHA1 hashes as an alternative to validate the integrity - of the downloaded files. A unix program called <code>md5</code> or - <code>md5sum</code> is included in many unix distributions. It is - also available as part of <a - href="http://www.gnu.org/software/textutils/textutils.html">GNU - Textutils</a>. Windows users can get binary md5 programs from <a - href="http://www.fourmilab.ch/md5/">here</a>, <a - href="http://www.pc-tools.net/win32/freeware/console/">here</a>, or - <a href="http://www.slavasoft.com/fsum/">here</a>. -</p> diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/tools/dist/binaries/windows/HEADER.html b/rubbos/app/tomcat-connectors-1.2.32-src/tools/dist/binaries/windows/HEADER.html deleted file mode 100644 index 7da51e1c..00000000 --- a/rubbos/app/tomcat-connectors-1.2.32-src/tools/dist/binaries/windows/HEADER.html +++ /dev/null @@ -1,12 +0,0 @@ -<h1>Index of /dist/tomcat/tomcat-connectors/jk/binaries/windows</h1> - -<h2>Important Notices</h2> -<ul> -<li><a href="#warnings">Windows Users, Read These First...</a></li> -<li><a href="#released">Obtain the Current Stable Release</a><br/></li> -<li><a href="#source">Debugging and Source Code</a></li> -</ul> - -<h2>Download from your -<a href="http://www.apache.org/dyn/closer.cgi/tomcat/tomcat-connectors/jk/binaries/windows/"> -nearest mirror site!</a></h2> diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/tools/dist/binaries/windows/README.html b/rubbos/app/tomcat-connectors-1.2.32-src/tools/dist/binaries/windows/README.html deleted file mode 100644 index a13ce392..00000000 --- a/rubbos/app/tomcat-connectors-1.2.32-src/tools/dist/binaries/windows/README.html +++ /dev/null @@ -1,60 +0,0 @@ -<h2><a name="mirrors">Download from your - <a href="http://www.apache.org/dyn/closer.cgi/tomcat/tomcat-connectors/jk/binaries/windows/">nearest mirror site!</a></a></h2> - -<p><strong>Please</strong> do not download from www.apache.org. Use a mirror - site to help us save apache.org bandwidth and to speed up your download. - <a href="http://www.apache.org/dyn/closer.cgi/tomcat/tomcat-connectors/jk/binaries/windows/"> - Click here</a> to find your nearest mirror.</p> - -<h2><a name="warnings">Windows Users, Read These First...</a></h2> - -<h3><strong>Warning:</strong> TCP/IP networking must be installed</h3> - -<p>TCP/IP must be correctly installed, configured and running in - order to install and use Apache Tomcat Connectors on Windows.</p> - -<h3>If you are installing on Windows XP prior to Service Pack 3</h3> - -<p>Install the Windows XP Service Pack 3. Refer to - <a href="http://support.microsoft.com/default.aspx?scid=kb;en-us;317949"> - KB article 317949</a> if you need the gory details exactly why you must - not run the original Windows XP or SP1. -</p> - -<h3><strong>Warning</strong> about the Quality of Service driver</h3> - -<p>We suggest disabling the "Quality of Service" (or QoS) network driver from - Microsoft if you primarily use the machine as an Web Server, as connector - does not support the QoS extensions to the WinSock API.</p> - -<h3><strong>Warning</strong> about Firewall and similar software</h3> - -<p>Most Firewall programs, Web Spam filters and other TCP/IP driver-based - products (including spyware!) do not correctly implement the entire WinSock - API. The shortcuts taken by the developers of such products could cause - connector to fail. -</p> - -<h2><a name="released">The current stable release is 1.2.32</a></h2> - -<p>See the Apache Tomcat Connectors -<a href="http://tomcat.apache.org/connectors-doc/miscellaneous/changelog.html">changelog</a> -for the complete list of features and bugs fixed in this release.</p> - -<h2><a name="source">Debugging and Source Code</a></h2> - -<p>You can find a corresponding -symbols.zip archive of the - debugging databases in the <a href="symbols/#symbols">symbols/</a> - directory, these are typically not needed. This -symbols.zip - archive can be unpacked into the web server installation directory, providing - all of the .pdb diagnostic files allowing most Windows debugging tools - (and the Dr. Watson utility) to produce useful crash analysis.</p> - -<p>You will find the source code package in the - <a href="../../../jk/">/dist/tomcat-connectors/jk/</a> source tree. The -src.zip file - contains <strong>only</strong> source and build files, and contains - <strong>no</strong> binary executable files.</p> - -<p>This binary release was created with Microsoft Windows DDK 7.1, - using a more recent Platform SDK. -</p> diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/tools/dist/binaries/windows/symbols/HEADER.html b/rubbos/app/tomcat-connectors-1.2.32-src/tools/dist/binaries/windows/symbols/HEADER.html deleted file mode 100644 index 1f1166de..00000000 --- a/rubbos/app/tomcat-connectors-1.2.32-src/tools/dist/binaries/windows/symbols/HEADER.html +++ /dev/null @@ -1,11 +0,0 @@ -<h1>Index of /dist/tomcat/tomcat-connectors/jk/binaries/windows/symbols</h1> - -<h2>Important Notices</h2> -<ul> -<li><a href="../#warnings">Windows Users, Read These First...</a></li> -<li><a href="#symbols">Binary Diagnostic Symbol Downloads</a></li> -</ul> - -<h2>Download from your -<a href="http://www.apache.org/dyn/closer.cgi/tomcat/tomcat-connectors/jk/binaries/windows/symbols/"> -nearest mirror site!</a></h2> diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/tools/dist/binaries/windows/symbols/README.html b/rubbos/app/tomcat-connectors-1.2.32-src/tools/dist/binaries/windows/symbols/README.html deleted file mode 100644 index f149a646..00000000 --- a/rubbos/app/tomcat-connectors-1.2.32-src/tools/dist/binaries/windows/symbols/README.html +++ /dev/null @@ -1,25 +0,0 @@ -<h2><a name="mirrors">Download from your -<a href="http://www.apache.org/dyn/closer.cgi/tomcat/tomcat-connectors/jk/binaries/windows/symbols/"> -nearest mirror site!</a></a></h2> - -<h2><a name="symbols">Binary Diagnostic Symbol Downloads</a></h2> - -<p>We now distribute a -symbols.zip file containing the precise - debugging symbols corresponding to each released binary distribution. - For the typical user, there is no need to download these archives. -</p> - -<p>These -symbols.zip packages contain the .pdb diagnostic symbol files (which - correpsond to the distributed binary release) and can be used by nearly all - modern Windows debugging tools, including the freely available WinDbg utility. - They are most useful for the core developers to review crash dumps generated - by Dr. Watson if Apache experiences a General Protection Fault. They also - provide additional backtrace details in Dr. Watson crash log files, if they - are installed into the Apache directory which is experiencing General - Protection Fault or other crash issues. -</p> - -<p>If you don't understand a word of this, and a developer did not personally - ask you to install them to help troubleshoot a problem, please trust that - you do not need these files to install or run Apache Tomcat Connectors. -</p> diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/tools/jkbindist.sh b/rubbos/app/tomcat-connectors-1.2.32-src/tools/jkbindist.sh deleted file mode 100755 index 881fb67b..00000000 --- a/rubbos/app/tomcat-connectors-1.2.32-src/tools/jkbindist.sh +++ /dev/null @@ -1,153 +0,0 @@ -#!/bin/ksh - -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - - -# Make sure to set your path so that we can find -# the following binaries: -# cd, mkdir, cp, rm, find, zip - -prefix="tomcat-connectors" -tools="`pwd`" -sign="" - -#################### NO CHANGE BELOW THIS LINE ############## - -#################### FUNCTIONS ############## - -usage() { - echo "Usage:: $0 -v VERSION -w WEBSERVER -o OS -a ARCH <module file>" - echo " -v: version to package" - echo " -w: package for web server" - echo " -o: Operating System" - echo " -a: Architecture" - echo " -p: GNU PG passphrrase used for signing" - echo " -k: ID of GNU PG key to use for signing" -} - -while getopts :v:w:o:a:p:k: c -do - case $c in - v) version=$OPTARG;; - w) websrv=$OPTARG;; - k) sign="--default-key=$OPTARG $sign";; - p) sign="--passphrase=$OPTARG $sign";; - o) opsys=$OPTARG;; - a) arch=$OPTARG;; - \:) usage - exit 2;; - \?) usage - exit 2;; - esac -done -shift `expr $OPTIND - 1` - -if [ -z "$version" -o -z "$websrv" ] -then - usage - exit 2 -fi -if [ -z "$opsys" ] -then - opsys="`uname -s | tr [A-Z] [a-z]`" - case "$opsys" in - cygwin*) - opsys=windows - ;; - esac -fi -if [ -z "$arch" ] -then - arch="`uname -m`" -fi - -if [ ! -f "$1" ] -then - usage - exit 2 -fi - -case "$websrv" in - httpd*) - webdesc="Apache HTTP Server" - ;; - iis*) - webdesc="Microsoft IIS Web Server" - ;; - netscape*|nsapi*) - webdesc="Oracle iPlanet Web Server" - ;; - *) - echo "Unknown web server: $webserv" - echo " Supported are: httpd, iis, nsapi" - ;; -esac - -dist=${prefix}-${version}-${opsys}-${arch}-${websrv} -dtop=${tools}/.. -copy="KEYS LICENSE NOTICE" - -rm -f ${copy} 2>/dev/null -rm -f ${dist} 2>/dev/null -rm -f ${dist}.* 2>/dev/null -cat << EOF > README - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - - - -Apache Tomcat Connectors - $version - -Here your'll find module binaries for $webdesc. -Check the online documentation at http://tomcat.apache.org/connectors-doc/ -for installation instructions. - -The Apache Tomcat Project -http://tomcat.apache.org -EOF - -umask 022 -for i in ${copy} -do - if [ -f ${dtop}/$i ] - then - cp ${dtop}/$i . - else - cp ${dtop}/native/$i . - fi -done - -# Pack -zip -9 -j ${dist}.zip $1 README ${copy} - -# Sign -archive=${dist}.zip -. ${tools}/signfile.sh ${sign} $archive - -# Cleanup -rm -f README ${copy} 2>/dev/null diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/tools/jkrelease.sh b/rubbos/app/tomcat-connectors-1.2.32-src/tools/jkrelease.sh deleted file mode 100755 index d92b1c46..00000000 --- a/rubbos/app/tomcat-connectors-1.2.32-src/tools/jkrelease.sh +++ /dev/null @@ -1,327 +0,0 @@ -#!/bin/ksh - -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - - -# Make sure to set your path so that we can find -# the following binaries: -# cd, mkdir, cp, rm, find -# svn -# ant -# libtoolize, aclocal, autoheader, automake, autoconf -# tar, zip, gzip -# gpg -# And any one of: w3m, elinks, links (links2) - -SVNROOT="http://svn.apache.org/repos/asf" -SVNPROJ="tomcat/jk" -JK_CVST="tomcat-connectors" -JK_OWNER="root" -JK_GROUP="bin" -JK_TOOLS="`pwd`" - -COPY_TOP="KEYS" -COPY_JK="BUILD.txt native jkstatus support tools xdocs" -COPY_NATIVE="LICENSE NOTICE" -COPY_BUILD="docs" -COPY_CONF="httpd-jk.conf uriworkermap.properties workers.properties workers.properties.minimal" -SIGN_OPTS="" - -#################### NO CHANGE BELOW THIS LINE ############## - -#################### FUNCTIONS ############## - -usage() { - echo "Usage:: $0 -v VERSION [-f] [-r revision] [-t tag | -b BRANCH | -T | -d DIR]" - echo " -v: version to package" - echo " -f: force, do not validate tag against version" - echo " -t: tag to use if different from version" - echo " -r: revision to package" - echo " -b: package from branch BRANCH" - echo " -T: package from trunk" - echo " -d: package from local directory" - echo " -p: GNU PG passphrrase used for signing" - echo " -k: ID of GNU PG key to use for signing" -} - -copy_files() { - src=$1 - target=$2 - list="$3" - - mkdir -p $target - for item in $list - do - echo "Copying $item from $src ..." - cp -pr $src/$item $target/ - done -} - -#################### MAIN ############## - -conflict=0 -while getopts :v:t:r:b:d:p:k:Tf c -do - case $c in - v) version=$OPTARG;; - t) tag=$OPTARG - conflict=$(($conflict+1));; - r) revision=$OPTARG;; - k) SIGN_OPTS="--default-key=$OPTARG $SIGN_OPTS";; - p) SIGN_OPTS="--passphrase=$OPTARG $SIGN_OPTS";; - b) branch=$OPTARG - conflict=$(($conflict+1));; - T) trunk=trunk - conflict=$(($conflict+1));; - d) local_dir=$OPTARG - conflict=$(($conflict+1));; - f) force='y';; - \:) usage - exit 2;; - \?) usage - exit 2;; - esac -done -shift `expr $OPTIND - 1` - -if [ $conflict -gt 1 ] -then - usage - echo "Only one of the options '-t', '-b', '-T' and '-d' is allowed." - exit 2 -fi - -if [ -n "$local_dir" ] -then - echo "Caution: Packaging from directory!" - echo "Make sure the directory is committed." - answer="x" - while [ "$answer" != "y" -a "$answer" != "n" ] - do - echo "Do you want to proceed? [y/n]" - read answer - done - if [ "$answer" != "y" ] - then - echo "Aborting." - exit 4 - fi -fi - -if [ -z "$version" ] -then - usage - exit 2 -fi -if [ -n "$revision" ] -then - revision="-r $revision" -fi -if [ -n "$trunk" ] -then - JK_SVN_URL="${SVNROOT}/${SVNPROJ}/trunk" - svn_url_info="`svn help info | grep URL`" - if [ -n "$svn_url_info" ] - then - JK_SVN_INFO="${JK_SVN_URL}" - else - JK_SVN_INFO=. - fi - JK_REV=`svn info $revision $JK_SVN_INFO | awk '$1 == "Revision:" {print $2}'` - if [ -z "$JK_REV" ] - then - echo "No Revision found at '$JK_SVN_URL'" - exit 3 - fi - JK_SUFFIX=-${JK_REV} - JK_DIST=${JK_CVST}-${version}-dev${JK_SUFFIX}-src -elif [ -n "$branch" ] -then - JK_BRANCH=`echo $branch | sed -e 's#/#__#g'` - JK_SVN_URL="${SVNROOT}/${SVNPROJ}/branches/$branch" - JK_REV=`svn info $revision ${JK_SVN_URL} | awk '$1 == "Revision:" {print $2}'` - if [ -z "$JK_REV" ] - then - echo "No Revision found at '$JK_SVN_URL'" - exit 3 - fi - JK_SUFFIX=-${JK_BRANCH}-${JK_REV} - JK_DIST=${JK_CVST}-${version}-dev${JK_SUFFIX}-src -elif [ -n "$local_dir" ] -then - JK_SVN_URL="$local_dir" - JK_REV=`svn info $revision ${JK_SVN_URL} | awk '$1 == "Revision:" {print $2}'` - if [ -z "$JK_REV" ] - then - echo "No Revision found at '$JK_SVN_URL'" - exit 3 - fi - JK_SUFFIX=-local-`date +%Y%m%d%H%M%S`-${JK_REV} - JK_DIST=${JK_CVST}-${version}-dev${JK_SUFFIX}-src -else - JK_VER=$version - JK_TAG=`echo $version | sed -e 's#^#JK_#' -e 's#\.#_#g'` - if [ -n $tag ] - then - if [ -z $force ] - then - echo $tag | grep "^$JK_TAG" > /dev/null 2>&1 - if [ $? -gt 0 ] - then - echo "Tag '$tag' doesn't belong to version '$version'." - echo "Force using '-f' if you are sure." - exit 5 - fi - fi - JK_TAG=$tag - fi - JK_SVN_URL="${SVNROOT}/${SVNPROJ}/tags/${JK_TAG}" - JK_REV=`svn info $revision ${JK_SVN_URL} | awk '$1 == "Revision:" {print $2}'` - JK_SUFFIX=" ($JK_REV)" - JK_DIST=${JK_CVST}-${JK_VER}-src -fi - -echo "Using subversion URL: $JK_SVN_URL" -echo "Rolling into file $JK_DIST.*" -sleep 2 - -umask 022 - -rm -rf ${JK_DIST} -rm -rf ${JK_DIST}.tmp - -mkdir -p ${JK_DIST}.tmp -svn export $revision "${JK_SVN_URL}" ${JK_DIST}.tmp/jk -if [ $? -ne 0 ]; then - echo "svn export failed" - exit 1 -fi - -for item in ${COPY_TOP} -do - svn export $revision "${JK_SVN_URL}/${item}" ${JK_DIST}.tmp/${item} -done - -# Build documentation. -cd ${JK_DIST}.tmp/jk/xdocs -ant -cd ../../.. - -# Update version information -file=${JK_DIST}.tmp/jk/native/common/jk_version.h -cp -p $file $file.orig -sed -e 's/^#define JK_REVISION .*/#define JK_REVISION "'"$JK_SUFFIX"'"/' \ - $file.orig > $file -rm $file.orig - -# Copying things into the source distribution -copy_files ${JK_DIST}.tmp $JK_DIST "$COPY_TOP" -copy_files ${JK_DIST}.tmp/jk $JK_DIST "$COPY_JK" -copy_files ${JK_DIST}.tmp/jk/native $JK_DIST "$COPY_NATIVE" -copy_files ${JK_DIST}.tmp/jk/build $JK_DIST "$COPY_BUILD" -copy_files ${JK_DIST}.tmp/jk/conf $JK_DIST/conf "$COPY_CONF" - -# Remove extra directories and files -targetdir=${JK_DIST} -rm -rf ${targetdir}/xdocs/jk2 -rm -rf ${targetdir}/native/CHANGES.txt -rm -rf ${targetdir}/native/build.xml -rm -rf ${targetdir}/native/NOTICE -rm -rf ${targetdir}/native/LICENSE -find ${JK_DIST} -name .cvsignore -exec rm -rf \{\} \; -find ${JK_DIST} -name CVS -exec rm -rf \{\} \; -find ${JK_DIST} -name .svn -exec rm -rf \{\} \; - -cd ${JK_DIST}/native - -# Check for links, elinks or w3m -W3MOPTS="-dump -cols 80 -t 4 -S -O iso-8859-1 -T text/html" -ELNKOPTS="-dump -dump-width 80 -dump-charset iso-8859-1 -no-numbering -no-home" -LNKOPTS="-dump -width 80 -codepage iso-8859-1 -no-g -html-numbered-links 0" -failed=true -for tool in `echo "w3m elinks links"` -do - found=false - for dir in `echo ${PATH} | sed 's!^:!.:!;s!:$!:.!;s!::!:.:!g;s!:! !g'` - do - if [ -x ${dir}/${tool} ] - then - found=true - break - fi - done - - # Try to run it - if ${found} - then - case ${tool} in - w3m) - TOOL="w3m $W3MOPTS" - ;; - links) - TOOL="links $LNKOPTS" - ;; - elinks) - TOOL="elinks $ELNKOPTS" - ;; - esac - rm -f CHANGES - echo "Creating the CHANGES file using '$TOOL' ..." - ${TOOL} ../docs/miscellaneous/printer/changelog.html > CHANGES 2>/dev/null - if [ -f CHANGES -a -s CHANGES ] - then - failed=false - break - fi - fi -done -if [ ${failed} = "true" ] -then - echo "Can't convert html to text (CHANGES)" - exit 1 -fi - -# Export text docs -echo "Creating the NEWS file using '$TOOL' ..." -rm -f NEWS -touch NEWS -for news in `ls -r ../xdocs/news/[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9].xml` -do - print=`echo $news | sed -e 's#xdocs/news#docs/news/printer#' -e 's#\.xml#.html#'` - echo "Adding $print to NEWS file ..." - ${TOOL} $print >>NEWS -done -if [ ! -s NEWS ] -then - echo "Can't convert html to text (NEWS)" - exit 1 -fi - -# Generate configure et. al. -./buildconf.sh -cd ../../ - -# Pack -tar cfz ${JK_DIST}.tar.gz --owner="${JK_OWNER}" --group="${JK_GROUP}" ${JK_DIST} || exit 1 -perl ${JK_DIST}/tools/lineends.pl --cr ${JK_DIST} -zip -9 -r ${JK_DIST}.zip ${JK_DIST} - -# Create detached signature and verify it -archive=${JK_DIST}.tar.gz -. ${JK_TOOLS}/signfile.sh ${SIGN_OPTS} $archive -archive=${JK_DIST}.zip -. ${JK_TOOLS}/signfile.sh ${SIGN_OPTS} $archive - diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/tools/lineends.pl b/rubbos/app/tomcat-connectors-1.2.32-src/tools/lineends.pl deleted file mode 100755 index 8a8b6666..00000000 --- a/rubbos/app/tomcat-connectors-1.2.32-src/tools/lineends.pl +++ /dev/null @@ -1,165 +0,0 @@ -#!/usr/bin/perl - -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# -# Heuristically converts line endings to the current OS's preferred format -# -# All existing line endings must be identical (e.g. lf's only, or even -# the accedental cr.cr.lf sequence.) If some lines end lf, and others as -# cr.lf, the file is presumed binary. If the cr character appears anywhere -# except prefixed to an lf, the file is presumed binary. If there is no -# change in the resulting file size, or the file is binary, the conversion -# is discarded. -# -# Todo: Handle NULL stdin characters gracefully. -# - -use IO::File; -use File::Find; - -# The ignore list is '-' seperated, with this leading hyphen and -# trailing hyphens in ever concatinated list below. -$ignore = "-"; - -# Image formats -$ignore .= "gif-jpg-jpeg-png-ico-bmp-"; - -# Archive formats -$ignore .= "tar-gz-z-zip-jar-war-bz2-tgz-"; - -# Many document formats -$ignore .= "eps-psd-pdf-ai-"; - -# Some encodings -$ignore .= "ucs2-ucs4-"; - -# Some binary objects -$ignore .= "class-so-dll-exe-obj-a-o-lo-slo-sl-dylib-"; - -# Some build env files -$ignore .= "mcp-xdc-ncb-opt-pdb-ilk-sbr-"; - -$preservedate = 1; - -$forceending = 0; - -$givenpaths = 0; - -$notnative = 0; - -while (defined @ARGV[0]) { - if (@ARGV[0] eq '--touch') { - $preservedate = 0; - } - elsif (@ARGV[0] eq '--nocr') { - $notnative = -1; - } - elsif (@ARGV[0] eq '--cr') { - $notnative = 1; - } - elsif (@ARGV[0] eq '--force') { - $forceending = 1; - } - elsif (@ARGV[0] eq '--FORCE') { - $forceending = 2; - } - elsif (@ARGV[0] =~ m/^-/) { - die "What is " . @ARGV[0] . " supposed to mean?\n\n" - . "Syntax:\t$0 [option()s] [path(s)]\n\n" . <<'OUTCH' -Where: paths specifies the top level directory to convert (default of '.') - options are; - - --cr keep/add one ^M - --nocr remove ^M's - --touch the datestamp (default: keeps date/attribs) - --force mismatched corrections (unbalanced ^M's) - --FORCE all files regardless of file name! - -OUTCH - } - else { - find(\&totxt, @ARGV[0]); - print "scanned " . @ARGV[0] . "\n"; - $givenpaths = 1; - } - shift @ARGV; -} - -if (!$givenpaths) { - find(\&totxt, '.'); - print "did .\n"; -} - -sub totxt { - $oname = $_; - $tname = '.#' . $_; - if (!-f) { - return; - } - @exts = split /\./; - if ($forceending < 2) { - while ($#exts && ($ext = pop(@exts))) { - if ($ignore =~ m|-$ext-|i) { - return; - } - } - } - @ostat = stat($oname); - $srcfl = new IO::File $oname, "r" or die; - $dstfl = new IO::File $tname, "w" or die; - binmode $srcfl; - if ($notnative) { - binmode $dstfl; - } - undef $t; - while (<$srcfl>) { - if (s/(\r*)\n$/\n/) { - $n = length $1; - if (!defined $t) { - $t = $n; - } - if (!$forceending && (($n != $t) || m/\r/)) { - print "mismatch in " .$oname. ":" .$n. " expected " .$t. "\n"; - undef $t; - last; - } - elsif ($notnative > 0) { - s/\n$/\r\n/; - } - } - print $dstfl $_; - } - if (defined $t && (tell $srcfl == tell $dstfl)) { - undef $t; - } - undef $srcfl; - undef $dstfl; - if (defined $t) { - unlink $oname or die; - rename $tname, $oname or die; - @anames = ($oname); - if ($preservedate) { - utime $ostat[9], $ostat[9], @anames; - } - chmod $ostat[2] & 07777, @anames; - chown $ostat[5], $ostat[6], @anames; - print "Converted file " . $oname . " to text in " . $File::Find::dir . "\n"; - } - else { - unlink $tname or die; - } -} diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/tools/reports/README.txt b/rubbos/app/tomcat-connectors-1.2.32-src/tools/reports/README.txt deleted file mode 100644 index 898a9df5..00000000 --- a/rubbos/app/tomcat-connectors-1.2.32-src/tools/reports/README.txt +++ /dev/null @@ -1,33 +0,0 @@ - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - -This directory contains perl scripts which can be used to generate -statistics for tomcat requests and errors logged by mod_jk. - -See the comments in the scripts for more details. - -A great deal of statistical data is generated but at this time -only long term trend graphs are being created and no reports. -This is only a start. Many more graphs and reports could be -generated from the data. Please consider contributing back any -new reports or graphs you create. Thanks. - -Requires the following perl modules and libraries: - -GD 1.8.x graphics library http://www.boutell.com/gd/. -GD 1.4.x perl module. -GD Graph perl module. -GD TextUtil perl module. -StatisticsDescriptive perl module. diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/tools/reports/tomcat_reports.pl b/rubbos/app/tomcat-connectors-1.2.32-src/tools/reports/tomcat_reports.pl deleted file mode 100755 index 4995c251..00000000 --- a/rubbos/app/tomcat-connectors-1.2.32-src/tools/reports/tomcat_reports.pl +++ /dev/null @@ -1,431 +0,0 @@ -#!/usr/local/bin/perl - -# -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -# $Id: tomcat_reports.pl 466585 2006-10-21 22:16:34Z markt $ - -# Author: Glenn Nielsen - -# Script for generating reports and graphs using statistical data generated -# by the tomcat_trend.pl script. -# -# The following graphs are created: -# -# tomcat_request.png -# Long term trend graph of total number of tomcat requests handled -# -# tomcat_median.png -# Long term overall trend graph of tomcat request latency median -# -# tomcat_deviation.png -# Long term overall trend graph of tomcat request mean and standard deviation -# -# tomcat_error.png -# Long term trend graph of requests rejected by tomcat. Shows requests rejected -# when tomcat has no request processors available. Can be an indicator that tomcat -# is overloaded or having other scaling problems. -# -# tomcat_client.png -# Long term trend graph of requests forward to tomcat which were aborted by the remote -# client (browser). You will normally see some aborted requests. High numbers of these -# can be an indicator that tomcat is overloaded or there are requests which have very high -# latency. -# -# tomcat_reports.pl <directory where statistics are archived> <directory to place graphs/reports in> - -use GD; -use GD::Graph; -use GD::Graph::Data; -use GD::Graph::lines; -use GD::Graph::linespoints; -use Statistics::Descriptive; -use Time::Local; - -# Constants - -%MON = ('JAN' => 0, 'Jan' => 0, - 'FEB' => 1, 'Feb' => 1, - 'MAR' => 2, 'Mar' => 2, - 'APR' => 3, 'Apr' => 3, - 'MAY' => 4, 'May' => 4, - 'JUN' => 5, 'Jun' => 5, - 'JUL' => 6, 'Jul' => 6, - 'AUG' => 7, 'Aug' => 7, - 'SEP' => 8, 'Sep' => 8, - 'OCT' => 9, 'Oct' => 9, - 'NOV' => 10, 'Nov' => 10, - 'DEC' => 11, 'Dec' => 11,); - -@Months = ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"); - -# Check the args - -$archivedir = $ARGV[0]; -$reportdir = $ARGV[1]; - -die "Usage: $0 archivedir reportdir" - unless( length($archivedir) && ($reportdir) ); - -die "Archive Directory $archivedir doesn't exist" - unless( -d $archivedir); - -die "Report Directory $reportdir doesn't exist" - unless( -d $reportdir); - -# Read in data from file -die "Archive Directory $archivedir has no global.data file" - unless( -e "$archivedir/global.data" ); - -@Data = `tail -365 $archivedir/global.data`; -$numdays = $#Data; -$daycounter = $numdays; - -foreach( @Data ) { - $line = $_; - chomp($line); - ($date,$count,$median,$mean,$stddev,$min,$max,$client_gone,$tomcat_full) = split /\s+/,$line; - # print "$daycounter $date $count $median $mean $stdev $min $max $client_gone $tomcat_full\n"; - $start_time = $date unless $start_time>0; - $end_time = $date; - push @days,int($daycounter/7); - push @count,$count; - push @median,$median; - push @mean,$mean; - push @stddev,$mean+$stddev; - push @min,$min; - push @max,$max; - push @client_gone,$client_gone; - push @tomcat_full,$tomcat_full; - $daycounter--; -} - -($day,$mon,$year) = (localtime($start_time))[3..5]; -$year += 1900; -$startdate = "$Months[$mon] $day, $year"; -($day,$mon,$year) = (localtime($end_time))[3..5]; -$year += 1900; -$enddate = "$Months[$mon] $day, $year"; - -# Output request trend graph -$outfile = "$reportdir/tomcat_request.png"; -unlink $outfile; - -$stats = Statistics::Descriptive::Sparse->new(); -$stats->add_data(@count); -$max = $stats->max(); -$min = $stats->min(); - -&RequestGraph(); - -# Output median latency trend graph -$outfile = "$reportdir/tomcat_median.png"; -unlink $outfile; - -$stats = Statistics::Descriptive::Sparse->new(); -$stats->add_data(@median); -$max = $stats->max(); -$min = $stats->min(); - -&MedianGraph(); - -# Output latency deviation trend graph -$outfile = "$reportdir/tomcat_deviation.png"; -unlink $outfile; - -$stats = Statistics::Descriptive::Sparse->new(); -$stats->add_data(@stddev); -$stats->add_data(@mean); -$max = $stats->max(); -$min = $stats->min(); - -&DeviationGraph(); - -# Output request error trend graph -$outfile = "$reportdir/tomcat_error.png"; -unlink $outfile; - -$stats = Statistics::Descriptive::Sparse->new(); -$stats->add_data(@tomcat_full); -$max = $stats->max(); -$min = $stats->min(); - -&ErrorGraph(); - -# Output request error trend graph -$outfile = "$reportdir/tomcat_client.png"; -unlink $outfile; - -$stats = Statistics::Descriptive::Sparse->new(); -$stats->add_data(@client_gone); -$max = $stats->max(); -$min = $stats->min(); - -&ClientGraph(); - -exit; - -sub RequestGraph { - - $graph = GD::Graph::lines->new(800,600); - @data = (\@days,\@count); - - $div = 100; - $div = 500 if $max >= 2000; - $div = 1000 if $max >= 5000; - $div = 5000 if $max >= 20000; - $div = 10000 if $max >= 50000; - $div = 50000 if $max >= 200000; - $div = 100000 if $max >= 500000; - $div = 500000 if $max >= 2000000; - $div = 1000000 if $max >= 5000000; - $ymax = (int($max/$div) + 1)*$div; - $ymin = int($min/$div)*$div; - $ytick = ($ymax - $ymin)/$div; - - $graph->set( - y_label => 'Requests', - title => "Tomcat Requests by Day from $startdate to $enddate", - y_min_value => $ymin, - y_max_value => $ymax, - y_tick_number => $ytick, - y_number_format => \&val_format, - x_label => 'Weeks Ago', - x_label_skip => 7, - x_tick_offset => $numdays%7, - dclrs => [ qw(green) ], - legend_placement => 'BC' - ) or warn $graph->error; - - $graph->set_legend( 'Requests' ); - $graph->set_title_font(GD::gdGiantFont); - $graph->set_x_axis_font(GD::gdSmallFont); - $graph->set_y_axis_font(GD::gdSmallFont); - $graph->set_legend_font(GD::gdSmallFont); - $gd = $graph->plot(\@data); - die "Graph Plot Failed: " . $graph->error unless defined $gd; - - open IMG, ">$outfile" or die $!; - print IMG $gd->png or die $gd->error; - close IMG; -} - -sub MedianGraph { - - $graph = GD::Graph::lines->new(800,600); - @data = (\@days,\@median); - - $div = .05; - $div = .1 if $max >= .5; - $div = .5 if $max >= 2; - $div = 1 if $max >= 5; - $div = 5 if $max >= 20; - $div = 10 if $max >= 50; - $div = 50 if $max >= 200; - $div = 100 if $max >= 500; - $ymax = (int($max/$div) + 1)*$div; - $ytick = $ymax/$div; - - $graph->set( - y_label => 'Latency (Seconds)', - title => "Tomcat Request Median Latency by Day from $startdate to $enddate", - y_min_value => 0, - y_max_value => $ymax, - y_tick_number => $ytick, - y_number_format => \&val_format, - x_label => 'Weeks Ago', - x_label_skip => 7, - x_tick_offset => $numdays%7, - dclrs => [ qw(green) ], - legend_placement => 'BC' - ) or warn $graph->error; - - $graph->set_legend( 'Median' ); - $graph->set_title_font(GD::gdGiantFont); - $graph->set_x_axis_font(GD::gdSmallFont); - $graph->set_y_axis_font(GD::gdSmallFont); - $graph->set_legend_font(GD::gdSmallFont); - $gd = $graph->plot(\@data); - die "Graph Plot Failed: " . $graph->error unless defined $gd; - - open IMG, ">$outfile" or die $!; - print IMG $gd->png or die $gd->error; - close IMG; -} - -sub DeviationGraph { - - $graph = GD::Graph::lines->new(800,600); - @data = (\@days,\@mean,\@stddev); - - $div = .1; - $div = .5 if $max >= 2; - $div = 1 if $max >= 5; - $div = 5 if $max >= 20; - $div = 10 if $max >= 50; - $div = 50 if $max >= 200; - $div = 100 if $max >= 500; - $ymax = (int($max/$div) + 1)*$div; - $ytick = $ymax/$div; - - $graph->set( - y_label => 'Latency (Seconds)', - title => "Tomcat Request Latency Mean and Deviation by Day from $startdate to $enddate", - y_max_value => $ymax, - y_tick_number => $ytick, - x_label => 'Weeks Ago', - x_label_skip => 7, - x_tick_offset => $numdays%7, - dclrs => [ qw(green yellow) ], - legend_placement => 'BC' - ) or warn $graph->error; - - $graph->set_legend( 'Mean', 'Mean plus Standard Deviation' ); - $graph->set_title_font(GD::gdGiantFont); - $graph->set_x_axis_font(GD::gdSmallFont); - $graph->set_y_axis_font(GD::gdSmallFont); - $graph->set_legend_font(GD::gdSmallFont); - $gd = $graph->plot(\@data); - die "Graph Plot Failed: " . $graph->error unless defined $gd; - - open IMG, ">$outfile" or die $!; - print IMG $gd->png or die $gd->error; - close IMG; -} - -sub ErrorGraph { - - $graph = GD::Graph::lines->new(800,600); - @data = (\@days,\@tomcat_full); - - $div = 5; - $div = 10 if $max >=100; - $div = 50 if $max >= 200; - $div = 100 if $max >= 1000; - $div = 500 if $max >= 2000; - $div = 1000 if $max >= 5000; - $div = 5000 if $max >= 20000; - $div = 10000 if $max >= 50000; - $div = 50000 if $max >= 200000; - $div = 100000 if $max >= 500000; - $div = 500000 if $max >= 2000000; - $div = 1000000 if $max >= 5000000; - $ymax = (int($max/$div) + 1)*$div; - $ymin = int($min/$div)*$div; - $ytick = ($ymax - $ymin)/$div; - - $graph->set( - y_label => 'Requests', - title => "Tomcat Rejected Request by Day from $startdate to $enddate", - y_min_value => $ymin, - y_max_value => $ymax, - y_tick_number => $ytick, - y_number_format => \&val_format, - x_label => 'Weeks Ago', - x_label_skip => 7, - x_tick_offset => $numdays%7, - dclrs => [ qw(green) ], - legend_placement => 'BC' - ) or warn $graph->error; - - $graph->set_legend( 'Tomcat Rejected Requests' ); - $graph->set_title_font(GD::gdGiantFont); - $graph->set_x_axis_font(GD::gdSmallFont); - $graph->set_y_axis_font(GD::gdSmallFont); - $graph->set_legend_font(GD::gdSmallFont); - $gd = $graph->plot(\@data); - die "Graph Plot Failed: " . $graph->error unless defined $gd; - - open IMG, ">$outfile" or die $!; - print IMG $gd->png or die $gd->error; - close IMG; -} - -sub ClientGraph { - - $graph = GD::Graph::lines->new(800,600); - @data = (\@days,\@client_gone); - - $div = 5; - $div = 10 if $max >=100; - $div = 50 if $max >= 200; - $div = 100 if $max >= 1000; - $div = 500 if $max >= 2000; - $div = 1000 if $max >= 5000; - $div = 5000 if $max >= 20000; - $div = 10000 if $max >= 50000; - $div = 50000 if $max >= 200000; - $div = 100000 if $max >= 500000; - $div = 500000 if $max >= 2000000; - $div = 1000000 if $max >= 5000000; - $ymax = (int($max/$div) + 1)*$div; - $ymin = int($min/$div)*$div; - $ytick = ($ymax - $ymin)/$div; - - $graph->set( - y_label => 'Requests', - title => "Tomcat Client Aborted Requests by Day from $startdate to $enddate", - y_min_value => $ymin, - y_max_value => $ymax, - y_tick_number => $ytick, - y_number_format => \&val_format, - x_label => 'Weeks Ago', - x_label_skip => 7, - x_tick_offset => $numdays%7, - dclrs => [ qw(green) ], - legend_placement => 'BC' - ) or warn $graph->error; - - $graph->set_legend( 'Tomcat Client Aborted Requests' ); - $graph->set_title_font(GD::gdGiantFont); - $graph->set_x_axis_font(GD::gdSmallFont); - $graph->set_y_axis_font(GD::gdSmallFont); - $graph->set_legend_font(GD::gdSmallFont); - $gd = $graph->plot(\@data); - die "Graph Plot Failed: " . $graph->error unless defined $gd; - - open IMG, ">$outfile" or die $!; - print IMG $gd->png or die $gd->error; - close IMG; -} - -sub val_format { - my $value = shift; - my $ret; - - $ret = $value; - if( $ret =~ /\./ ) { - $ret =~ s/\.(\d\d\d).*/\.$1/; - } else { - $ret =~ s/(\d+)(\d\d\d)$/$1,$2/; - $ret =~ s/(\d+)(\d\d\d),(\d\d\d)$/$1,$2,$3/; - } - return $ret; -} - -sub size_format { - my $value = shift; - my $ret; - - if( $max >= 5000 ) { - $value = int(($value/1024)+.5); - } - $ret = $value; - $ret =~ s/(\d+)(\d\d\d)$/$1,$2/; - $ret =~ s/(\d+)(\d\d\d),(\d\d\d)$/$1,$2,$3/; - return $ret; -} diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/tools/reports/tomcat_trend.pl b/rubbos/app/tomcat-connectors-1.2.32-src/tools/reports/tomcat_trend.pl deleted file mode 100755 index ee933a2a..00000000 --- a/rubbos/app/tomcat-connectors-1.2.32-src/tools/reports/tomcat_trend.pl +++ /dev/null @@ -1,408 +0,0 @@ -#!/usr/local/bin/perl - -# -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -# $Id: tomcat_trend.pl 466585 2006-10-21 22:16:34Z markt $ - -# Author: Glenn Nielsen - -# Script for analyzing mod_jk.log data when logging tomcat request data using -# the JkRequestLogFormat Apache mod_jk configuration. -# -# Generates statistics for request latency and errors. Archives the generated -# data to files for later use in long term trend graphs and reports. -# -# tomcat_trend.pl <directory containing mod_jk.log> <directory for archiving statistics> - -use FileHandle; -use Statistics::Descriptive; -use Time::Local; - -# Constants - -%MON = ('JAN' => 0, 'Jan' => 0, - 'FEB' => 1, 'Feb' => 1, - 'MAR' => 2, 'Mar' => 2, - 'APR' => 3, 'Apr' => 3, - 'MAY' => 4, 'May' => 4, - 'JUN' => 5, 'Jun' => 5, - 'JUL' => 6, 'Jul' => 6, - 'AUG' => 7, 'Aug' => 7, - 'SEP' => 8, 'Sep' => 8, - 'OCT' => 9, 'Oct' => 9, - 'NOV' => 10, 'Nov' => 10, - 'DEC' => 11, 'Dec' => 11,); - -@Months = ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"); - -# Check the args - -$logdir= $ARGV[0]; -$archivedir = $ARGV[1]; - -die "Usage: $0 logdir archivedir" - unless( length($logdir) && length($archivedir) ); - -die "Log Directory $logdir doesn't exist" - unless( -d $logdir); - -die "Archive Directory $archivedir doesn't exist" - unless( -d $archivedir); - -# Get start date from global.data if it exists - -if( -e "$archivedir/global.data" ) { - # Get the start date from the last entry in global.data - @tail = `tail -1 $archivedir/global.data`; - $startdate = (split /\s+/,$tail[0])[0]; - ($day, $mon, $year) = (localtime($startdate))[3..5]; - if ($day == 31) { - $day=1; - $month++; - if ($month > 11) { - $month=0; - $year++; - } - } - $startdate = timelocal(0,0,0,$day+1,$mon,$year); - -} - -($day, $mon, $year) = (localtime(time))[3..5]; -$curdate = timelocal(0,0,0,$day,$mon,$year); -print "Today: " . scalar(localtime($curdate)) . "\n"; - -# Get the log files names and date they start -@logs = `ls -1 $logdir/mod_jk.log*`; -foreach( @logs ) { - $logfile = $_; - chomp($logfile); - next if ( $logfile =~ /\.(bz2|gz|zip)$/ ); - @head = `head -1 $logfile`; - ($mon, $day, $time, $year) = (split /\s+/,$head[0])[1..4]; - ($hour, $min, $sec) = split /:/,$time; - $year =~ s/\]$//; - $logtime = timelocal($sec,$min,$hour,$day,$MON{$mon},$year-1900); - $modjklog{$logtime} = $logfile; -} - -# Set the startdate if this is the first time processing the logs -# If we have a startdate, remove log files we con't need to process -foreach $logtime ( sort {$a <=> $b} keys %modjklog ) { - # If logs haven't been processed before, set startdate to time of - # first log entry - if( $startdate !~ /^\d+$/ ) { - $startdate = $logtime; - ($day, $mon, $year) = (localtime($startdate))[3..5]; - $startdate = timelocal(0,0,0,$day,$mon,$year); - last; - } - if( $logtime > $startdate ) { - last; - } - # Save the previous log file since start date may start here - $prevlogfile = $modjklog{$logtime}; - $prevlogtime = $logtime; - # Remove log files we don't need to process - delete $modjklog{$logtime}; -} - -# Add back in the previous log file where we need to start processing -if( defined $prevlogtime ) { - $modjklog{$prevlogtime} = $prevlogfile; -} - -print "StartDate: " . scalar(localtime($startdate)) . "\n"; -$processdate = $startdate; - -foreach $key ( sort {$a <=> $b} keys %modjklog ) { - $logtime = $processdate; - $logfile = $modjklog{$key}; - print "Processing log: $logfile\n"; - last if( $key >= $curdate ); - $fh = new FileHandle "<$logfile"; - die "Open of logfile $logfile failed: $!" - unless defined $fh; - while( $line = $fh->getline) { - chomp($line); - ($mon, $day, $time, $year) = (split /\s+/,$line)[1..4]; - ($hour, $min, $sec) = split /:/,$time; - $year =~ s/\]$//; - if( $day !~ /^\d+/ || $hour !~ /^\d+/ || $min!~ /^\d+/ || $sec !~ /^\d+/ ) { - print "Unknown log entry: $origline\n" unless $origline =~ /\.c /; - next; - } - $logtime = timelocal($sec,$min,$hour,$day,$MON{$mon},$year-1900); - - if( $logtime > $processdate ) { - $origline = $line; - # Strip off the leading date and time - $line =~ s/^\[.*\] //; - - # See if this is a new 5 minute period - $interval = int($logtime/300); - if( $interval != $previnterval ) { - if( defined $previnterval ) { - &IntervalStats(\%Global,\%Interval,$previnterval*300); - } - undef %Interval; - undef @IntervalLatency; - undef %IntervalWorkers; - $Interval{tomcat_full} = 0; - $Interval{client_gone} = 0; - $Interval{latency} = \@IntervalLatency; - $Interval{workers} = \%IntervalWorkers; - $previnterval = $interval; - } - - # See if this is a new day - if( $day != $prevday ) { - if( defined $prevday ) { - &DailyStats($processdate,\%Global); - } - undef %Global; - undef %GlobalWorkers; - undef @GlobalLatency; - $Global{tomcat_full} = 0; - $Global{client_gone} = 0; - $Global{interval} = ""; - $Global{latency} = \@GlobalLatency; - $Global{workers} = \%GlobalWorkers; - $Global{errors} = ""; - $prevday = $day; - $processdate = $logtime; - } - - # Stop processing if logtime is today - last if( $logtime >= $curdate ); - - if( $line =~ /\d\)\]{0,1}: / ) { - # Handle a mod_jk error - if( $line =~ /(jk_tcp_socket_recvfull failed|ERROR: Receiving from tomcat failed)/ ) { - $Global{tomcat_full}++; - $Interval{tomcat_full}++; - } elsif( $line =~ /(ajp_process_callback - write failed|ERROR sending data to client. Connection aborted or network problems|Client connection aborted or network problems)/ ) { - $Global{client_gone}++; - $Interval{client_gone}++; - } - next; - } else { - # Handle a mod_jk request log entry - $line =~ s/^\[.*\] //; - $line =~ s/\"(GET|POST|OPTIONS|HEAD)[^\"]*\" //; - $line =~ s/[\?\;].*\"//; - $line =~ s/\"//g; - ($work, $host, $page, $status, $latency) = split /\s+/,$line; - $page =~ s/\/\//\//g; - $page =~ s/\.\//\//g; - if( length($work) <= 0 || length($host) <= 0 || - length($page) <= 0 || $status !~ /^\d+$/ || $latency !~ /^\d+\.\d+$/ ) { - print "Unknown log entry: $origline\n" unless $origline =~ /\.c /; - next; - } - - # Throw out abnormally long requests and log them as an error - if( $latency >= 1800 ) { - $Global{errors} .= "Error: $page has an HTTP status of $status and an "; - $Global{errors} .= "abnormally long request latency of $latency seconds\n"; - next; - } - - # Save the data by day for Global, Worker, and Host - push @{$Global{latency}},$latency; - $workers = $Global{workers}; - if( !defined $$workers{$work} ) { - undef @{"$work"}; - undef %{"$work"}; - undef %{"$work-hosts"}; - ${"$work"}{latency} = \@{"$work"}; - ${"$work"}{hosts} = \%{"$work-hosts"}; - ${"$work"}{interval} = ""; - $$workers{$work} = \%{"$work"}; - } - $worker = $$workers{$work}; - push @{$$worker{latency}},$latency; - - if( !defined $$worker{hosts}{$host} ) { - undef @{"$work-$host"}; - undef %{"$work-$host"}; - undef %{"$work-$host-pages"}; - ${"$work-$host"}{latency} = \@{"$work-$host"}; - ${"$work-$host"}{pages} = \%{"$work-$host-pages"}; - ${"$work-$host"}{interval} = ""; - $$worker{hosts}{$host} = \%{"$work-$host"}; - } - $hoster = $$worker{hosts}{$host}; - push @{$$hoster{latency}},$latency; - - if( !defined $$hoster{pages}{$page} ) { - undef @{"$work-$host-$page"}; - $$hoster{pages}{$page} = \@{"$work-$host-$page"}; - } - push @{$$hoster{pages}{$page}},$latency; - - # Save the data by 5 minute interval for Global, Worker, and Host - push @{$Interval{latency}},$latency; - $workers = $Interval{workers}; - if( !defined $$workers{"$work"} ) { - undef @{"int-$work"}; - undef %{"int-$work"}; - undef %{"int-$work-hosts"}; - ${"int-$work"}{latency} = \@{"int-$work"}; - ${"int-$work"}{hosts} = \%{"int-$work-hosts"}; - $$workers{$work} = \%{"int-$work"}; - } - $worker = $$workers{$work}; - push @{$$worker{latency}},$latency; - - if( !defined $$worker{hosts}{$host} ) { - undef @{"int-$work-$host"}; - undef %{"int-$work-$host"}; - ${"int-$work-$host"}{latency} = \@{"int-$work-$host"}; - $$worker{hosts}{$host} = \%{"int-$work-$host"}; - } - $hoster = $$worker{hosts}{$host}; - push @{$$hoster{latency}},$latency; - } - } - } - undef $fh; -} - -# If the last log file ends before switch to the current day, -# output the last days data -if( $logtime < $curdate ) { - &IntervalStats(\%Global,\%Interval,$previnterval*300); - &DailyStats($processdate,\%Global); -} - -exit; - -sub IntervalStats($$$) { - my $global = $_[0]; - my $data = $_[1]; - my $interval = $_[2]; - - ($count,$median,$mean,$stddev,$min,$max) = &CalcStats($$data{latency}); - $$global{interval} .= "$interval $count $median $mean $stddev $min $max $$data{client_gone} $$data{tomcat_full}\n"; - - foreach $work ( keys %{$$data{workers}} ) { - $worker = $$data{workers}{$work}; - $gworker = $$global{workers}{$work}; - ($count,$median,$mean,$stddev,$min,$max) = &CalcStats($$worker{latency}); - $$gworker{interval} .= "$interval $count $median $mean $stddev $min $max\n"; - foreach $host ( keys %{$$worker{hosts}} ) { - $hoster = $$worker{hosts}{$host}; - $ghoster = $$gworker{hosts}{$host}; - ($count,$median,$mean,$stddev,$min,$max) = &CalcStats($$hoster{latency}); - $$ghoster{interval} .= "$interval $count $median $mean $stddev $min $max\n"; - } - } -} - -sub DailyStats($$) { - my $date = $_[0]; - my $data = $_[1]; - - &SaveStats($data,$date,"","global"); - &SaveFile($$data{interval},$date,"","daily"); - foreach $work ( keys %{$$data{workers}} ) { - $worker = $$data{workers}{$work}; - &SaveStats($worker,$date,$work,"global"); - &SaveFile($$worker{interval},$date,$work,"daily"); - foreach $host ( keys %{$$worker{hosts}} ) { - $hoster = $$worker{hosts}{$host}; - &SaveStats($hoster,$date,"$work/$host","global"); - &SaveFile($$hoster{interval},$date,"$work/$host","daily"); - $pagedata = ""; - foreach $page ( sort keys %{$$hoster{pages}} ) { - $pager = $$hoster{pages}{$page}; - ($count,$median,$mean,$stddev,$min,$max) = &CalcStats($pager); - $pagedata .= "$page $count $median $mean $stddev $min $max\n"; - } - $pagedata .= $$data{errors}; - &SaveFile($pagedata,$date,"$work/$host","request"); - } - } -} - -sub CalcStats($) { - my $data = $_[0]; - - $stats = Statistics::Descriptive::Full->new(); - $stats->add_data(@{$data}); - $median = $stats->median(); - $mean = $stats->mean(); - $stddev = $stats->standard_deviation(); - $max = $stats->max(); - $min = $stats->min(); - $count = $stats->count(); - return ($count,$median,$mean,$stddev,$min,$max); -} - -sub SaveStats($$$$) { - my $data = $_[0]; - my $date = $_[1]; - my $dir = $_[2]; - my $file = $_[3]; - - if( length($dir) > 0 ) { - $dir = "$archivedir/$dir"; - } else { - $dir = $archivedir; - } - mkdir "$dir",0755; - - $outfile = "$dir/${file}.data"; - - ($count,$median,$mean,$stddev,$min,$max) = &CalcStats($$data{latency}); - - open DATA, ">>$outfile" or die $!; - print DATA "$date $count $median $mean $stddev $min $max"; - print DATA " $$data{client_gone} $$data{tomcat_full}" if defined $$data{tomcat_full}; - print DATA "\n"; - close DATA; -} - -sub SaveFile($$$$) { - my $data = $_[0]; - my $date = $_[1]; - my $dir = $_[2]; - my $file = $_[3]; - my ($day, $mon, $year); - - ($day, $mon, $year) = (localtime($date))[3..5]; - $year += 1900; - $mon++; - $mon = "0$mon" if $mon < 10; - $day = "0$day" if $day < 10; - $file = "$year-$mon-$day-$file"; - - if( length($dir) > 0 ) { - $dir = "$archivedir/$dir"; - } else { - $dir = $archivedir; - } - mkdir "$dir",0755; - - $outfile = "$dir/${file}.data"; - - open DATA, ">>$outfile" or die $!; - print DATA $data; - close DATA; -} diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/tools/signfile.sh b/rubbos/app/tomcat-connectors-1.2.32-src/tools/signfile.sh deleted file mode 100755 index 25d2c8a3..00000000 --- a/rubbos/app/tomcat-connectors-1.2.32-src/tools/signfile.sh +++ /dev/null @@ -1,64 +0,0 @@ -#!/bin/sh - -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -gpgopts="-ba" -for o -do - case "$o" in - *=*) a=`echo "$o" | sed 's/^[-_a-zA-Z0-9]*=//'` - ;; - *) a='' - ;; - esac - case "$o" in - --default-key=* ) - gpgopts="$gpgopts --default-key $a" - shift - ;; - --passphrase=* ) - gpgopts="$gpgopts --passphrase $a" - shift - ;; - * ) - break - ;; - esac -done - -# Try to locate a MD5 binary -md5_bin="`which md5sum 2>/dev/null || type md5sum 2>&1`" -if [ -x "$md5_bin" ]; then - MD5SUM="$md5_bin --binary " -else - MD5SUM="echo 00000000000000000000000000000000 " -fi -# Try to locate a SHA1 binary -sha1_bin="`which sha1sum 2>/dev/null || type sha1sum 2>&1`" -if [ -x "$sha1_bin" ]; then - SHA1SUM="$sha1_bin --binary " -else - SHA1SUM="echo 0000000000000000000000000000000000000000 " -fi - -for o -do - echo "Signing $o" - gpg $gpgopts $o - $MD5SUM $o > $o.md5 - $SHA1SUM $o > $o.sha1 -done - |