FreeVis

Door Joris van Rooij, 20 jaar geleden, 2.094x bekeken

Dit is een heeeeel erg simpel scriptje dat ik in een uurtje gemaakt heb. Ik heb dit maar gedaan omdat phpsysinfo en dingen die er op lijken allemaal configuratie nodig hebben, terwijl ik alleen mn memoryusage belangrijk vind. Dit gooi je gewoon ergens in je webdirectory en het werkt al.

Het maakt gebruik van procps. Ik heb het getest op een 2.4 box met procps 2.0.11 en op mijn eigen 2.6.9 (bling,bling) box met procps 3.2.1.

Het werkt op beide boxjes, dus ik neem aan dt er geen problems zijn.

Je kunt natuurlijk de layout en zo veranderen naar eigen wens, ik heb nu gewoon de standaard gepakt, dus mijn naam staat er ook nog in en zo..

Nu heb ik in versie 0.2 ook het uitlezen van de mountpoints toegevoegd. Dit maakt gebruik van het df commando van de GNU coreutils. Dit bleek wat moeilijker te zijn vanwege compatibiliteit.

Gesponsorde koppelingen

PHP script bestanden

  1. freevis

 

Er zijn 10 reacties op 'Freevis'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Bram Z
Bram Z
20 jaar geleden
 
0 +1 -0 -1
Leuk script ondersteunt php dit staandaard ?
Joris van Rooij
Joris van Rooij
20 jaar geleden
 
0 +1 -0 -1
Het enige wat php hiet doet is het verwerken van de free -o data tot een fraai uiterlijk. Php ondersteunt standaard toch gewoon shell_exec?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$out
= shell_exec('cd /etc/local/apache2/htdocs; ls -all');
echo '<pre>'.$out.'</pre>';
?>


geeft je bijvoorbeeld de inhoud van je webroot met alle bestanden.
Dutchcamel
dutchcamel
20 jaar geleden
 
0 +1 -0 -1
Waarom zo vaak dezelfde str_replace() achter elkaar? Bij str_replace('--', ' ', $var); worden ALLE -- stukjes in $var vervangen voor een spatie. Heeft geen nut om dat dan nog 12 keer te herhalen.
Ook kan str_replace() met arrays werken, dus dit is misschien handiger als je langere lijsten str_replace()-en krijgt:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?
$free
= shell_exec('free -o');
$search = array('Mem:', 'Swap:', "\r", "\n", ' ', ' -', '- ', '--', '-total-used-free-shared-buffers-cached-');
$replace = array('', '', '', '', '-', '-', '-', '-', '');
$free = str_replace($search, $replace, $free);
?>
Joris van Rooij
Joris van Rooij
20 jaar geleden
 
0 +1 -0 -1
Quote:
Bij str_replace('--', ' ', $var); worden ALLE -- stukjes in $var vervangen voor een spatie.

Dat dacht ik aanvankelijk ook ja. Dat blijkt toch niet helemaal het geval te zijn. Het zou gewoon moeten werken met een enkele str_replace, maar na het proberen op 5 verschillende linux machines, en 1 unix machine, bleek dit de enige goede oplossing te zijn. Lijkt me een "bug" in PHP? ik ben dit nog nooit eerder tegen gekomen. En over die array: het is mogelijk, maar het scheelt niets in parsetijd, en het script wordt er niet echt overzichtelijker op. Alleen korter. Na ja, dat is smaak denk ik.
St.Chessere
St.Chessere
20 jaar geleden
 
0 +1 -0 -1
Hey joris op windows heb ik dat niet :P.
Toch maar lang leve windows?? :P:P
Joris van Rooij
Joris van Rooij
20 jaar geleden
 
0 +1 -0 -1
Quote:
Hey joris op windows heb ik dat niet


RTFI (read the f*ck*n intro)

Quote:
Het maakt gebruik van procps. Ik heb het getest op een 2.4 box met procps 2.0.11 en op mijn eigen 2.6.9 (bling,bling) box met procps 3.2.1.
St.Chessere
St.Chessere
20 jaar geleden
 
0 +1 -0 -1
Wow maakte maar een geintje, maar ik weet het all weer windows is een gevoelig onderwerp bij je :D
Joris van Rooij
Joris van Rooij
20 jaar geleden
 
0 +1 -0 -1
jup Windows wel. Das ff off-topic. Dat heeft niks met dit script te maken! Daarvoor is de koffiehoek....
Niek s
niek s
20 jaar geleden
 
0 +1 -0 -1
windows sucks...
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Joris van Rooij
Joris van Rooij
20 jaar geleden
 
0 +1 -0 -1
ik heb een bug gefixt: tmpfs moet er natuurlijk niet tussen staan :)

Om te reageren heb je een account nodig en je moet ingelogd zijn.

Inhoudsopgave

  1. freevis

Labels

  • Geen tags toegevoegd.

Navigatie

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.