Skip to content

Instantly share code, notes, and snippets.

@bngsudheer
Created October 27, 2011 14:56
Show Gist options
  • Save bngsudheer/1319775 to your computer and use it in GitHub Desktop.
Save bngsudheer/1319775 to your computer and use it in GitHub Desktop.
Show data transfer for a given day using Apache's access log file
#!/usr/bin/awk -f
# Usage is
# ./apache-data-transfer-day-report.awk -v date=20/Oct/2011 /path/to/access/log
# Typically, you have an access log file for a domain
# This has been tested only on CentOS 6.
# Fork or ask for a feature or bug fix.
#
BEGIN {
datepart = date
printf ("\nData transfer for the domain for %s:\n", datepart);
common = datepart;
data_transfer = 0;
}
$4 ~ common {
data_transfer = data_transfer+ $10;
}
END {
printf ("\n");
data_transfer_kb = data_transfer / 1024;
data_transfer_mb = data_transfer_kb / 1024;
data_transfer_gb = data_transfer_mb / 1024;
printf ("Total data transfer : %d bytes || %.2f KB || %.2f MB || %.2f GB \n", data_transfer, data_transfer_kb, data_transfer_mb, data_transfer_gb);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment