dorijan wrote:ist es evtl. auch möglich über das LAN einen weiteren Server abzufragen auch wenn auf der anderen Maschine kein Apache o.ä rennt?
Es ist zwar (AFAIK) bisher nicht vorgesehen, aber vermutlich könntest Du einfach PHP und serverstats auf der entsprechenden Maschine installieren, und "wie immer" per update.php cronjob Daten sammeln, also rrd Dateien schreiben lassen. Diese Dateien könntest Du dann regelmäßig, per cronjob oder wie auch immer auf den Server mit Apache-Installation übertragen (RSYNC oder FTP, WebDav, NFS...), und dort eine entsprechende
config/graph.php verwenden, die entsprechende Graphen erzeugt. Aber dazu kann ddanier sicherlich mehr sagen... ich weiß z.B. nicht ob man den Cache auch übertragen müsste (vermutlich nicht, oder?).
Sonst kann man natürlich auch eine SNMP Source schreiben, eine entsprechende
SNMP Extension gibt es für PHP. Dann könnte man die Daten per SNMP über das Netzwerk abrufen. Eine SNMP Source fänd ich gar nicht schlecht, würde ich zwar vermutlich nicht verwenden, aber gerade für den hier beschriebenen Einsatzzweck ist es sicher nützlich.
dorijan wrote:mit PHP 5.5.1 erhalte ich noch einige komische Fehlermeldungen z.B. :
Code: Select all
<b>Warning</b>: Missing argument 1 for disk::__construct() [...]
das sieht für mich nach Konfigurations-Fehlern aus. Es gibt zwei Anleitungen, die man bei einer "erweiterten Installation" (also alles was über
`cp -r config.samle config` hinausgeht) lesen sollte:
1.
doc/graph-config.txt
Hier wird beschrieben, was man alles benötigt um einen Graphen anzuzeigen
2.
doc/sources.txt
Hier findet man für jede Source von serverstats die notwendigen Informationen, um diese nutzen zu können. Vor allem aber werden hier die Parameter beschrieben, die in
config/sources.php ggfs. übergeben werden müssen.
Mal kurz ein Beispiel für
sources/disk.php:
In der
doc/sources.txt steht hierzu:
Code: Select all
===============================================================================
2. disk
===============================================================================
Reads the disk-statistics from /proc/diskstats (kernel 2.6) and saves the
read/written bytes. Optional all Partitions can be logged, too.
Parameters:
$disk: Name of disk that should be monitored (example: 'hda')
Format: String
$withpartitions: Decide wether you want to log the partitions
Format: boolean
Default: false
$sector_size: Size of the Sectors of your disk
Format: integer
Default: 512
$path_stat: Filename to the needed /proc/-file
Format: String
Default: '/proc/diskstats'
Datasources:
read: Bytes read
write: Bytes written
readps: Bytes read per second
writeps: Bytes written per second
partX_read, partX_write, partX_readps, partX_writeps:
Same for partitions
Die Parameter beziehen sich auf den (für jede Source notwendigen) Eintrag in der
config/sources.php, also z.B.:
Code: Select all
$config['disk']['module'] = new disk('hda');
in diesem Fall ist der erste Parameter notwendig, die anderen werden mit default Werten vorbelegt. Wenn solche Angaben nicht aus den
docs hervorgehen, kann man natürlich auch einfach im Source nachsehen, in diesem Fall benötigt man die
__construct Zeile in
sources/disk.php:
Code: Select all
public function __construct($disk, $withpartitions = false, $sector_size = 512, $path_stat = '/proc/diskstats')
Jeder Parameter mit "= IRGENDWAS" hat dieses "IRGENDWAS" als default-Wert, auf den kann also verzichtet werden, wenn der default Wert OK ist. "$disk" hat sowas nicht, es muss also in
config/sources.php angegeben werden.
"Datasources" bezieht sich auf die entsprechend verfügbaren Datenquellen für die
config/graph.php ('ds').
dorijan wrote:Code: Select all
php update.php
PHP Warning: Missing argument 1 for traffic::__construct()[...]
hier fehlt vermutlich ebenfalls ein Parameter.