[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Calcular ancho de banda utilizado.



El Jueves, 29 de Junio de 2006 12:28, Iñaki escribió:
> En Postgres no sé, pero en MySQL sería algo así:
>
>    mysq -u usuario -p password base_de_datos -e "INSERT INTO tabla
> VALUES...";
>
>
> Suerte, ya nos contarás  ;)

Bueno pues cuento como lo he dejado.

Este es el script:

#!/bin/bash

INT1=eth1
INT0=eth0
DB=trafico
HOST=localhost
USER=XXXXX
PASSWORD=XXXXX

if [ $(ifconfig $INT1 |awk '/TX byte/{print $7 $8}' |tr -d '(MBKib)') != 
0.0 ]; then
	PGPASSWORD=$PASSWORD psql -d $DB -h $HOST -U $USER -c "insert into 
trafico(cantidad, fecha) values ('$(ifconfig $INT1 |grep 'TX bytes' |
cut -d ":" -f3 |cut -d " " -f1)', 'now()')";
fi

if [ $(ifconfig $INT0 |awk '/TX byte/{print $7 $8}' |tr -d '(MBKib)') != 
0.0 ]; then
	PGPASSWORD=$PASSWORD psql -d $DB -h $HOST -U $USER -c "insert into 
trafico(cantidad, fecha) values ('$(ifconfig $INT1 |grep 'TX bytes' |
cut -d ":" -f3 |cut -d " " -f1)', 'now()')";
fi

Con esto consigo insertar el número de bytes que se descargan y lo introduce 
en la base de datos (postgres). He usado postgres, pues es lo que uso 
habitualmente, pues no tenía ganas de instalar mysql para esto.

El script lo que hace es comprobar que interface está activada, pues igual 
conecto con wireless que con cable. La que tenga el valor distinto a 0.0, se 
entiende que está activada o ha sido activada.

Luego no queda mas que llamar a este script desde shutdown, reboot, halt, y 
almacena los valores en la base de datos. Luego con una simple consulta se 
suman los bytes filtrando por fecha y ¡¡¡LISTO!!!.

Bueno, pues eso es todo.
-- 
Saludos.
Pablo.



Reply to: