Page 1 sur 1

[..] Ecrire PIng suivant temps dans fichier

Posté : lun. 17 mars 2014 15:13
par jcaspar
B :D onjour à tous !

Je souhaiterais pinger un routeur et écrire dans un fichier les lignes de Ping correspondant à un temps compris entre 20 et 90 ms ...

la fonction ping permet de pinger, la fonction filewrite d'écrire dans un fichier ...
mais j'ignore comment récupérer la valeur temps de chaque ligne de ping ...

Je vous remercie pour vos idées et conseils :mrgreen:

Jean-Marc

Re: [..] Ecrire PIng suivant temps dans fichier

Posté : lun. 17 mars 2014 15:35
par jguinch
Bin la fonction Ping() te renvoie justement le temps de réponse en millisecondes.

Code : Tout sélectionner

$roundtripTime = Ping($IPRouter)
If $roundtripTime > 20 AND $roundtripTime < 90 Then FileWriteLine("fichierDeLog.log", $roundtripTime)
 

Re: [..] Ecrire PIng suivant temps dans fichier

Posté : mar. 18 mars 2014 19:30
par jcaspar
M :D erci beaucoup pour votre réponse

Nickel exactement ce qu'il me faut !
Maintenant il faut joindre au fichier la date et l'heure du ping et limiter l'enregistrement à un enregistrement par jour .... je vais plancher dessus et je vous tiendrais informé ! :wink:

Re: [..] Ecrire PIng suivant temps dans fichier

Posté : dim. 30 mars 2014 13:54
par jcaspar
B :D onjour à tous !

Voici ou j'en suis .... il me reste un problème le script crée bien un nouveau fichier et écrit dans ce nouveau fichier
mais à condition d'arrêter le script puis de le relancer....il faudrait que le script puisse faire cela de lui même ...
...bon il faut que je continue de plancher ... si vous avez des idées je suis preneur lol ! :roll: :wink:

Jean-Marc
► Afficher le texte

Re: [..] Ecrire PIng suivant temps dans fichier

Posté : dim. 30 mars 2014 21:46
par Sea
Quelques petites remarques :

Avant de faire une opération sur un fichier il est plus propre (comprendre par la c'est mieux), de lui dire comment tu ouvre le fichier (avec la fonction FileOpen)

Après dans ton programme tu as ceci.

Code : Tout sélectionner

FileWrite($Fichier, Pinger())
Ce qui va littéralement mettre la valeur de ta fonction Pinger() dans ton fichier, normalement $Fichier devrais correspondre a ton FileOpen.

Bref maintenant regardons ce qui ce passe dans ta fonction Pinger.

Code : Tout sélectionner

While 1
 
Ici une boucle infini sa veut dire que tu ne la quitte jamais (a part si tu met la commande ExiteLoop)
Et dans cette boucle tu récupères le ping et si il n'y a pas d'erreur tu l'écris dans un fichier. (Tien tien a l'origine tu l'appelais comment ta fonction? Tu l'utilisais pas dans une fonction qui sert justement à écrire un fichier?).

Si tu veux qu'une fonction sois appeler tout le temps alors que ton code continue de s’exécuter utilise AdlibRegister :)

Il faut donc que ta fonction Pinger renvoie une valeur qui elle sera écrite.

Ainsi sa fera un truc comme ça

Code : Tout sélectionner

FileWrite($Fichier, Pinger())

Func Pinger()
$taValeurDePing = 2
return $taValeurDePing
EndFunc
 
Ainsi tu auras 2 écris dans ton fichier ;)


Bref je ne peux pas te donner un code tout fais mais je pense avec ces quelques conseils normalement tu pourrais faire le script final :)