#!/bin/bash

timedatectl set-timezone "Europe/Paris"
user="maxime"
mdp="Sigrid@62570!"
bdd="monitoring_services"
requete=$(mysql -u$user -p$mdp $bdd -N -e "SELECT * FROM services";)
date_enregistrement=`date +"%Y-%m-%d %T"`
IFS=$'\n'
for ligne in $requete; do
    id=$(echo $ligne | cut -f1)
    url=$(echo $ligne | cut -f2)
    type=$(echo $ligne | cut -f3)
    nom=$(echo $ligne | cut -f4)
    if [ "$type" = "URL" ] 
    then 
        for adresse in $url; do
        rtt=$(ping -c 4 $adresse | tail -1 | awk -F '/' '{print $5}')
        echo "${rtt} ms"
        if [ -n "$rtt" ] 
        then
            stat=1
        else 
            stat=0
        fi
        requete=$(mysql -u$user -p$mdp $bdd -N -e "INSERT INTO statut (etat, tempsdereponse, services_id, url, Type, nom, date) VALUES ($stat, $rtt, $id, '$adresse', '$type', '$nom', '$date_enregistrement')";)
    done
    fi
        if [ "$type" = "VPS" ] 
    then 
        for adresse in $url; do
        rtt=$(ping -c 4 $adresse | tail -1 | awk -F '/' '{print $5}')
        echo "${rtt} ms"
        if [ -n "$rtt" ] 
        then
            stat=1
        else 
            rtt=0
            stat=0
        fi
        requete=$(mysql -u$user -p$mdp $bdd -N -e "INSERT INTO statut (etat, tempsdereponse, services_id, url, Type, nom, date) VALUES ($stat, $rtt, $id, '$adresse', '$type', '$nom', '$date_enregistrement')";)
    done
    fi
        if [ "$type" = "API" ] 
    then 
        for adresse in $url; do
        rtt=$(curl -s -w "%{time_total}\n" -o /dev/null $adresse)
        
       
        temps=`echo "$rtt *1000" | bc -l`
        echo "$temps ms"
        if [ -n "$temps" ] 
        then
            stat=1
        else 
            stat=0
        fi
        requete=$(mysql -u$user -p$mdp $bdd -N -e "INSERT INTO statut (etat, tempsdereponse, services_id, url, Type, nom, date) VALUES ($stat, $temps, $id, '$adresse', '$type', '$nom', '$date_enregistrement')";)
    done
    fi
done

