Internet Connection Uptime (PPPoE) ?

Post new topic   Reply to topic    DD-WRT Forum Index -> Broadcom SoC basierende Hardware
Goto page Previous  1, 2, 3  Next
Author Message
CaScAdE
DD-WRT Guru


Joined: 18 Jun 2006
Posts: 1110
Location: Kiel (54.4247,10.1721)

PostPosted: Tue Aug 29, 2006 17:06    Post subject: Reply with quote
atzekalle wrote:
ohh,
wann hast du den post editiert?
hättest lieber ne neue antwortschreiben sollen, so habe ich das erst jetzt gesehen.


Zauberhaft *g*

Wegen der antwort: Wollte editieren wegen verlinkung aus anderen threads... Aber iss ja egal... evtl gibts das ja bald mal in der firmware...

Aber bis dahin koennte man auch

Code:

echo "#!/bin/sh
echo '<HTML><HEAD><TITLE>PPPoE Uptime</TITLE></HEAD>'
echo '<BODY>'
nvram get router_name
echo ' PPPoE Uptime:<br>'

PPPOEUP=\`date +%s -r /var/run/ppp0.pid\`
NOW=\`date +%s\`
UPTIME=\`cat /proc/uptime | awk '{uptime=int(\$1)
printf \"%d\", uptime}'\`

BOOTTIME=\`expr \$NOW - \$UPTIME\`

if [ \$PPPOEUP -lt \$BOOTTIME ]; then
 PPPOEUP=\`expr \$PPPOEUP + \$BOOTTIME\`
fi

echo | awk -v date1=\$NOW -v date2=\$PPPOEUP '{
    time=date1-date2
    days=int(time/86400)
    hours=int((time - 86400*days)/3600)
    mins=int((time - 86400*days - 3600*hours)/60)
    secs=(time - 86400*days - 3600*hours - 60*mins)
    printf \"%d Days %d Hours %d Minutes %d Seconds\n\", days, hours, mins, secs
}'
echo '</BODY></HTML>'
" > /tmp/www/pppoeuptime.sh
chmod +x /tmp/www/pppoeuptime.sh


unter Administration -> Commands -> Save Startup machen und dann kann man immer unter
http://router/user/pppoeuptime.sh
die uptime abfragen.
Eigentlich ist das ganze auch nen guter ansatz fuer eigene scripte :D

Achja, falls jemand mit dem Wiki klarkommt kann er das ja mal adden... usefull script oder so :)

Also, any comments?

_________________
DD-WRT F.A.Q.

Webcam Kiel
Sponsor
Kief
DD-WRT Novice


Joined: 08 Jun 2006
Posts: 26
Location: Schwabenland

PostPosted: Tue Aug 29, 2006 22:59    Post subject: Reply with quote
CaScAdE wrote:
... evtl gibts das ja bald mal in der firmware...

Wäre wünschenswert. Ich weiß ich wiederhol mich Smile Aber vielleicht liest Brainslayer ja mit und hat ein Einsehen ;-)

Gruß
Kief

_________________
| ADSL2+ (D16128/U800) | CL-040-I (3.63w) | WRT54GL (Tomato) | NSLU2 (Kamikaze) |
Mittern8
DD-WRT Novice


Joined: 25 Oct 2006
Posts: 17

PostPosted: Thu Nov 02, 2006 13:11    Post subject: Reply with quote
Ich antworte mal im passenden Thread, um im ursprünglichen Thread nicht off topic zu werden.

CaScAdE wrote:
Mittern8 wrote:
Aber, dass die DD-WRT nur die Uptime des Routers und nicht den Zeitpunkt des letzten Verbiindungsaufbaus anzeigt, ist wirklich bedauerlich.


http://www.dd-wrt.com/phpBB2/viewtopic.php?p=21707#21707 als workaround?


Ja, Dein Script hatte ich mit Hilfe der Forensuche auch schon mal gesehen und es liefert auch die Info, die ich will.
Schade nur, dass es nicht in die Statusseite integriert ist.

Danke noch mal für den Hinweis und die Vorlage - ich werde das dann mal benutzen bis etwas entsprechendes ins GUI integriert ist.

BTW (und wieder Gefahr laufend, OT zu werden), gibt es eigentlich ein limit für die Anzahl der Befehle im Startup-Script?
CaScAdE
DD-WRT Guru


Joined: 18 Jun 2006
Posts: 1110
Location: Kiel (54.4247,10.1721)

PostPosted: Sat Nov 11, 2006 15:27    Post subject: Reply with quote
der nvram ist beschraenkt, ich weiss aber nichtmehr auf wieviel, wenn man den zu voll macht passts halt nichtmehr, aber sonst waere keine beschraenkung...

Welches script ging denn bei dir? das was man in die startup einfuegt? Hab das gerade nochmal getestet, ich hab keine ahnung wie ich im webinterface kommentieren muss damit das rauskommt was ich gerne moechte deswegen hab ich das ueber telnet gemacht...

Code:
# nvram set rc_startup="echo -en \"#!/bin/sh\necho '<HTML><HEAD><TITLE>PPPoE Uptime</TITLE></HEAD>'\necho '<BODY>'\nnvram get router_name\necho ' PPPoE Uptime:<br>'\n\nPPPOEUP=\\\`date +%s -r /var/run/ppp0.pid\\\`\nNOW=\\\`date +%s\\\`\nUPTIME=\\\`cat /proc/uptime | awk '{uptime=int(\\\$1)\nprintf \\\"%d\\\", uptime}'\\\`\n\nBOOTTIME=\\\`expr \\\$NOW - \\\$UPTIME\\\`\n\nif [ \\\$PPPOEUP -lt \\\$BOOTTIME ]; then\n PPPOEUP=\\\`expr \\\$PPPOEUP + \\\$BOOTTIME\\\`\nfi\n\necho | awk -v date1=\\\$NOW -v date2=\\\$PPPOEUP '{\n    time=date1-date2\n    days=int(time/86400)\n    hours=int((time - 86400*days)/3600)\n    mins=int((time - 86400*days - 3600*hours)/60)\n    secs=(time - 86400*days - 3600*hours - 60*mins)\n    printf \\\"%d Days %d Hours %d Minutes %d Seconds\\\\\\\n\\\", days, hours, mins, secs}'\necho '</BODY></HTML>'\n\" > /tmp/www/pppoeuptime.sh
chmod +x /tmp/www/pppoeuptime.sh
"
~ #


laeuft dann, ist zwar unuebersichtlicher aber es geht Very Happy

_________________
DD-WRT F.A.Q.

Webcam Kiel
Mittern8
DD-WRT Novice


Joined: 25 Oct 2006
Posts: 17

PostPosted: Sat Nov 11, 2006 16:39    Post subject: Reply with quote
Ich hab der Einfachheit halber das Script über "Administration/Startup Scripts" eingefügt:
Code:
echo "#!/bin/sh
echo '<HTML><HEAD><TITLE>PPPoE Uptime</TITLE></HEAD>'
echo '<BODY>'
nvram get router_name
echo ' PPPoE Uptime:<br>'

PPPOEUP=\`date +%s -r /var/run/ppp0.pid\`
NOW=\`date +%s\`
UPTIME=\`cat /proc/uptime | awk '{uptime=int(\$1)
printf \"%d\", uptime}'\`

BOOTTIME=\`expr \$NOW - \$UPTIME\`

if [ \$PPPOEUP -lt \$BOOTTIME ]; then
 PPPOEUP=\`expr \$PPPOEUP + \$BOOTTIME\`
fi

echo | awk -v date1=\$NOW -v date2=\$PPPOEUP '{
    time=date1-date2
    days=int(time/86400)
    hours=int((time - 86400*days)/3600)
    mins=int((time - 86400*days - 3600*hours)/60)
    secs=(time - 86400*days - 3600*hours - 60*mins)
    printf \"%d Days %d Hours %d Minutes %d Seconds\n\", days, hours, mins, secs
}'
echo '</BODY></HTML>'
" > /tmp/www/pppoeuptime.sh
chmod +x /tmp/www/pppoeuptime.sh

Das läuft so weit auch ohne Probleme.
Ich muss gestehen, ich hab mich mit der DD-WRT noch nicht sehr intensiv auseinandergesetzt, sonst hätte ich mir das bestimmt auch mal genauer angesehen.
An sich müsste das ja auch ohne große Probleme ins WEB-Interface zu integrieren sein - die Frage ist für mich allerdings, wo die Status-Seiten her kommen.
Ich seh da nur ständig was von asp.
Sieht alles sehr "dynamisch" aus.

<EDITH>
2006-12-17: Letzte Zeile des codes korrigiert!
<EDITH>


Last edited by Mittern8 on Sun Dec 17, 2006 13:32; edited 1 time in total
Kief
DD-WRT Novice


Joined: 08 Jun 2006
Posts: 26
Location: Schwabenland

PostPosted: Sun Nov 12, 2006 0:21    Post subject: Reply with quote
Gibts des immer no ned ? Smile
_________________
| ADSL2+ (D16128/U800) | CL-040-I (3.63w) | WRT54GL (Tomato) | NSLU2 (Kamikaze) |
Raver
DD-WRT Novice


Joined: 10 Nov 2006
Posts: 11

PostPosted: Sun Dec 10, 2006 23:54    Post subject: Reply with quote
ist das jetzt irgendwo schon eingebaut? (v23/v24)
bog
DD-WRT Novice


Joined: 15 Nov 2006
Posts: 7

PostPosted: Fri Dec 15, 2006 19:36    Post subject: Reply with quote
das script 3 eintraege weiter oben funktioniert bei mir nicht. es wird zwar erstellt, und auch executable gemacht, aber ich kann es weder im browser unter http://192.168.x.y/user/pppoeuptime.sh, noch per ssh aufrufen. bei ersterem bekomme ich eine leere seite geliefert, bei zweiterem loescht er seltsam das bashprompt wenn ich ./<tab> eingebe und liefert ein ": not foundeuptime.sh". kapier ich nicht.

hier laeuft dd-wrt v23sp2 std auf nem wrt54gl v1.1
atzekalle
DD-WRT User


Joined: 07 Jun 2006
Posts: 313

PostPosted: Fri Dec 15, 2006 19:45    Post subject: Reply with quote
oh, ich bei mir läuft es zwar, aber ein wenig abgeändert.
ich habe es gerade noch ein mal mit dem exaten copierten probier und es funktioniert auch nicht ..
der chmod befehl stimmt nicht
Code:
echo "#!/bin/sh
echo '<HTML><HEAD><TITLE>PPPoE Uptime</TITLE></HEAD>'
echo '<BODY>'
nvram get router_name
echo ' PPPoE Uptime:<br>'

PPPOEUP=\`date +%s -r /var/run/ppp0.pid\`
NOW=\`date +%s\`
UPTIME=\`cat /proc/uptime | awk '{uptime=int(\$1)
printf \"%d\", uptime}'\`

BOOTTIME=\`expr \$NOW - \$UPTIME\`

if [ \$PPPOEUP -lt \$BOOTTIME ]; then
 PPPOEUP=\`expr \$PPPOEUP + \$BOOTTIME\`
fi

echo | awk -v date1=\$NOW -v date2=\$PPPOEUP '{
    time=date1-date2
    days=int(time/86400)
    hours=int((time - 86400*days)/3600)
    mins=int((time - 86400*days - 3600*hours)/60)
    secs=(time - 86400*days - 3600*hours - 60*mins)
    printf \"%d Days %d Hours %d Minutes %d Seconds\n\", days, hours, mins, secs
}'
echo '</BODY></HTML>'
" > /tmp/www/pppoeuptime.sh
chmod +x /tmp/www/pppoeuptime.sh
es fehlte die endung ..

also nun fukntioniert es über den aufruf: /tmp/www/pppoeuptime.sh

ka, ob auch im httpserver funktioniert, ich habe keinen laufen.

_________________
greez atzekalle
_________________

WRT54Gv3.1 01/02/08-dd-wrt.v24.std RC6.2
CaScAdE
DD-WRT Guru


Joined: 18 Jun 2006
Posts: 1110
Location: Kiel (54.4247,10.1721)

PostPosted: Sat Dec 16, 2006 5:21    Post subject: Reply with quote
Also in meinen posts war die endung eigentlich immer... und ich glaube fest dran das ich es bei mir laufen hatte... jedenfalls fuer ein paar stunden zum testen...
_________________
DD-WRT F.A.Q.

Webcam Kiel
Mittern8
DD-WRT Novice


Joined: 25 Oct 2006
Posts: 17

PostPosted: Sun Dec 17, 2006 13:28    Post subject: Reply with quote
atzekalle wrote:
oh, ich bei mir läuft es zwar, aber ein wenig abgeändert.
...der chmod befehl stimmt nicht
Code:

chmod +x /tmp/www/pppoeuptime.sh
es fehlte die endung ..

also nun fukntioniert es über den aufruf: /tmp/www/pppoeuptime.sh


mea culpa, mea maxima culpa! Embarassed

Ist natürlich richtig, dass die Endung ".sh" bei meinem code fehlte - ist mir wohl beim cut&paste irgendwie verloren gegangen!
Sorry dafür!

Ich werde das mal schnell korrigieren, um zukünftige Verwirrungen zu vermeiden.

Gruß,
MIttern8
bog
DD-WRT Novice


Joined: 15 Nov 2006
Posts: 7

PostPosted: Mon Dec 25, 2006 14:34    Post subject: Reply with quote
okay, hab mir etwas zeit gelassen.

das fehlende .sh des chmod befehls hatte ich schon ergaenzt. mein fehler war wohl, das script unter administration/commands zu pasten, bzw es nicht einfach so in die konsole zu pasten. nun funktionierts jedenfalls prima. uebrigens auch per web, wie vorher erwaehnt. danke!
CaScAdE
DD-WRT Guru


Joined: 18 Jun 2006
Posts: 1110
Location: Kiel (54.4247,10.1721)

PostPosted: Wed Jan 10, 2007 6:18    Post subject: Reply with quote
WaS wrote:
blackfir3 wrote:

- Uptime der PPPoE Verbindung im Webinterface auslesen zu können wäre auch schön.

ist in der SP3 beta vom 9. Januar drin Very Happy


damit koennte man den thread ja eigentlich schliessen...

Wollte das nur abschliessend erwaehnen Smile

_________________
DD-WRT F.A.Q.

Webcam Kiel
VPN-User
DD-WRT User


Joined: 05 Oct 2006
Posts: 104

PostPosted: Fri Jan 12, 2007 0:07    Post subject: Reply with quote
Da isn Bug. Das Ding in v2.3SP3 zeigt auch ne positive, hochzählende Uptime an, obwohl man nichtmal connected is... Rolling Eyes
Raver
DD-WRT Novice


Joined: 10 Nov 2006
Posts: 11

PostPosted: Fri Jan 12, 2007 19:10    Post subject: Reply with quote
in v24 auch integriert.
Goto page Previous  1, 2, 3  Next Display posts from previous:    Page 2 of 3
Post new topic   Reply to topic    DD-WRT Forum Index -> Broadcom SoC basierende Hardware All times are GMT

Navigation

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You can attach files in this forum
You can download files in this forum