#!/bin/bash

. /etc/netflow/install.conf

DBG="/usr/share/netflow/web/nf_debug"

rm $DBG &> /dev/null


echo "Subject: Netflow configuration dump" >> $DBG
echo >> $DBG

echo "@@@ System" >> $DBG
uname -a >> $DBG 
cat /etc/motd >> $DBG 


echo >> $DBG
echo "@@@ MySQL dump" >> $DBG
$MYSQLDUMP_BIN --compact $DATABASE x_stat >> $DBG
$MYSQLDUMP_BIN --compact $DATABASE x_coll >> $DBG
$MYSQLDUMP_BIN --compact $DATABASE x_device >> $DBG
$MYSQLDUMP_BIN --compact $DATABASE x_devcoll >> $DBG
$MYSQLDUMP_BIN --compact $DATABASE x_table >> $DBG
$MYSQLDUMP_BIN --compact $DATABASE x_unit >> $DBG
$MYSQLDUMP_BIN --compact $DATABASE x_global >> $DBG
echo "@@@ MySQL dump option" >> $DBG
$MYSQLDUMP_BIN --compact $MYSQLOPTION $DATABASE x_stat >> $DBG
$MYSQLDUMP_BIN --compact $MYSQLOPTION $DATABASE x_coll >> $DBG
$MYSQLDUMP_BIN --compact $MYSQLOPTION $DATABASE x_device >> $DBG
$MYSQLDUMP_BIN --compact $MYSQLOPTION $DATABASE x_devcoll >> $DBG
$MYSQLDUMP_BIN --compact $MYSQLOPTION $DATABASE x_table >> $DBG
$MYSQLDUMP_BIN --compact $MYSQLOPTION $DATABASE x_unit >> $DBG
$MYSQLDUMP_BIN --compact $MYSQLOPTION $DATABASE x_global >> $DBG

echo >> $DBG
echo "@@@ MySQL variables" >> $DBG
echo "show variables;" | $MYSQL_BIN -s >> $DBG
echo "show variables;" | $MYSQL_BIN -s $MYSQLOPTION >> $DBG

echo >> $DBG
echo "@@@ MySQL status" >> $DBG
echo "show status;" | $MYSQL_BIN -s >> $DBG
echo "show status;" | $MYSQL_BIN -s $MYSQLOPTION >> $DBG

if [ -f /var/log/syslog ]; then
  echo >> $DBG
  echo "@@@ Syslog" >> $DBG
  cat /var/log/syslog | grep nfc | tail -n 500 >> $DBG 
  cat /var/log/syslog | grep -v nfc | tail -n 100 >> $DBG 
fi

if [ -f /var/log/messages ]; then
  echo >> $DBG
  echo "@@@ Messages" >> $DBG
  cat /var/log/messages | grep nfc | tail -n 500 >> $DBG 
  cat /var/log/messages | grep -v nfc | tail -n 100 >> $DBG 
fi


echo >> $DBG
echo "@@@ Ifconfig" >> $DBG
ifconfig >> $DBG


echo >> $DBG
echo "@@@ Route" >> $DBG
route -n >> $DBG

echo >> $DBG
echo "@@@ Resolv.conf" >> $DBG
cat /etc/resolv.conf >> $DBG


echo >> $DBG
echo "@@@ Netstat" >> $DBG
netstat -anp  >> $DBG


echo >> $DBG
echo "@@@ DF" >> $DBG
df >> $DBG

echo >> $DBG
echo "@@@ Date" >> $DBG
date >> $DBG
date +%s>> $DBG


echo >> $DBG
echo "@@@ Processes" >> $DBG
ps ax >> $DBG


echo >> $DBG
echo "@@@ install.conf" >> $DBG
cat /etc/netflow/install.conf >> $DBG


echo >> $DBG
echo "@@@ nfcd.conf" >> $DBG
cat /etc/netflow/nfcd.conf >> $DBG

echo >> $DBG
echo "@@@ nfw.conf" >> $DBG
cat /etc/netflow/nfw.conf >> $DBG


if [ -d /etc/apache ]; then
  find /etc/apache -type f | grep -v ".crt" | while read fn; do
    echo >> $DBG
    echo "@@@ APACHE CONFIG $fn" >> $DBG
    cat "$fn"|head -n 2000 >> $DBG
  done
fi

if [ -d /etc/apache2 ]; then
  find /etc/apache2 -type f | grep -v ".crt" | while read fn; do
    echo >> $DBG
    echo "@@@ APACHE2 CONFIG $fn" >> $DBG
    cat "$fn"|head -n 2000 >> $DBG
  done
fi

if [ -d /etc/apache-ssl ]; then
  find /etc/apache-ssl -type f | grep -v ".crt" | while read fn; do
    echo >> $DBG
    echo "@@@ APACHE-SSL CONFIG $fn" >> $DBG
    cat "$fn"|head -n 2000 >> $DBG
  done
fi


if [ -d /etc/php4 ]; then
  find /etc/php4 -type f | while read fn; do
    echo >> $DBG
    echo "@@@ PHP4 CONFIG $fn" >> $DBG
    cat "$fn"|head -n 2000 >> $DBG
  done
fi

if [ -d /etc/php.d ]; then
  find /etc/php.d -type f | while read fn; do
    echo >> $DBG
    echo "@@@ PHP.D CONFIG $fn" >> $DBG
    cat "$fn"|head -n 2000 >> $DBG
  done
fi

if [ -f /etc/php.ini ]; then
  echo >> $DBG
  echo "@@@ PHP.INI CONFIG $fn" >> $DBG
  cat "/etc/php.ini"|head -n 2000 >> $DBG
fi


echo >> $DBG
echo "@@@ APACHE LIB" >> $DBG
find /usr/lib -type f | grep apache | while read fn; do
  echo "$fn" >> $DBG
done

  echo >> $DBG
  echo "@@@ PHP LIB" >> $DBG
find /usr/lib -type f | grep php | while read fn; do
  echo "$fn" >> $DBG
done




echo >>$DBG
echo "@@@ TCPDUMP" >> $DBG
tcpdump -i any -n udp|head -n 2000 >>$DBG 2>/dev/null &
sleep 10
killall tcpdump
sync
sleep 1


echo >> $DBG
echo "." >> $DBG


chmod 644 $DBG &> /dev/null
cat $DBG | sendmail support@caligare.com
