[PHP Windows] CPU load - winmgmts Com obj

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Guillome
  • Registratie: Januari 2001
  • Niet online
Hoi

Ik wil de CPU load van de webserver opvragen (voor de serverstatuspagina).
Ik heb deze code gebruikt:
PHP:
1
2
$wmi = new COM("WinMgmts:{impersonationLevel=impersonate}\\\\.");
....

Op onze testbak gaat het goed, prachtig overzicht.
Op de livebak werkt het niet:
Fatal error: Uncaught exception 'com_exception' with message 'Failed to create COM object `WinMgmts:{impersonationLevel=impersonate}\\.': ' in FILE.php:51 Stack trace: #0 FILE.php(51): com->com('WinMgmts:{imper...') #1 FILE.php(69): cpuload()#2 FILE.php(3):
Wie kan me hier mee helpen?

Beide servers:
Windows Server 2k3
Virtuele server

Ik denk dat het iets met rechten is, maar ik kan nergens vinden hoe of wat. Ik heb de IUSR al toegevoegd aan administrators, mocht niet baten.

If then else matters! - I5 12600KF, Asus Tuf GT501, Asus Tuf OC 3080, Asus Tuf Gaming H670 Pro, 48GB, Corsair RM850X PSU, SN850 1TB, Arctic Liquid Freezer 280, ASUS RT-AX1800U router


Acties:
  • 0 Henk 'm!

  • Guillome
  • Registratie: Januari 2001
  • Niet online
Dat gaat over excel :?

Die 2e site heb ik ook gevonden, die codes werken evenmin

[ Voor 58% gewijzigd door Guillome op 30-08-2010 14:16 ]

If then else matters! - I5 12600KF, Asus Tuf GT501, Asus Tuf OC 3080, Asus Tuf Gaming H670 Pro, 48GB, Corsair RM850X PSU, SN850 1TB, Arctic Liquid Freezer 280, ASUS RT-AX1800U router


Acties:
  • 0 Henk 'm!

  • djexplo
  • Registratie: Oktober 2000
  • Laatst online: 07-07 15:40
Er zijn wel meer topics over op google zie: http://www.google.com/sea...=f&aqi=&aql=&oq=&gs_rfai=

2e link van JapyDooge is waarschijnlijk ook relevant voor jou.
Waarom heb je die rare "\\\\" er achterstaan ?

[ Voor 3% gewijzigd door djexplo op 30-08-2010 14:26 ]

'if it looks like a duck, walks like a duck and quacks like a duck it's probably a duck'


Acties:
  • 0 Henk 'm!

  • Oid
  • Registratie: November 2002
  • Niet online

Oid

Misschien kan je hier ook wat informatie uit halen:

http://phpsysinfo.sourceforge.net/

Acties:
  • 0 Henk 'm!

  • Guillome
  • Registratie: Januari 2001
  • Niet online
Die \\\\ stond in een voorbeeld, maar wat ik ook invoer, geen enkele werkt.

WinMgmts:{impersonationLevel=impersonate}"); ook niet

Alle werken wél op de testbak

If then else matters! - I5 12600KF, Asus Tuf GT501, Asus Tuf OC 3080, Asus Tuf Gaming H670 Pro, 48GB, Corsair RM850X PSU, SN850 1TB, Arctic Liquid Freezer 280, ASUS RT-AX1800U router


Acties:
  • 0 Henk 'm!

  • Noxious
  • Registratie: Juli 2002
  • Laatst online: 22:46
Maar ik kan me voorstellen dat PHP (of de webserver) onder een andere user draaien dan op de testbak?
If so, lekkere testbak als de setup niet hetzelfde is :+ maar dan nog, je kan ook aanmelden met een andere user he, zie dan mijn 2e link alsnog ;)

Acties:
  • 0 Henk 'm!

  • Guillome
  • Registratie: Januari 2001
  • Niet online
Beide ingelogde users zijn lid van de administrators groep. Is dat niet voldoende?
Ik kan op de livebak niet gaan knoeien natuurlijk, maar de testbak wel.
Maar waar geef ik aan welke gebruiker IIS gebruikt? Das natuurlijk niet de ingelogde gebruiker, want IIS draait ook als je nog niet ingelogd bent. Applicationpool kan ik wel identy instellen, maar die zijn op beide servers al gelijk.

If then else matters! - I5 12600KF, Asus Tuf GT501, Asus Tuf OC 3080, Asus Tuf Gaming H670 Pro, 48GB, Corsair RM850X PSU, SN850 1TB, Arctic Liquid Freezer 280, ASUS RT-AX1800U router


Acties:
  • 0 Henk 'm!

  • Noxious
  • Registratie: Juli 2002
  • Laatst online: 22:46
Eh, draait je webserver onder de naam van een ingelogde gebruiker dan? Dat lijkt me sowieso niet de bedoeling op een productieserver...

Acties:
  • 0 Henk 'm!

  • Guillome
  • Registratie: Januari 2001
  • Niet online
Even voor de goede orde, heeft dit met het probleem te maken of gaan we offtopic? In het eerste geval ga ik het onderzoeken (in het 2e geval ook, maar dat hoeft dan niet hier besproken te worden :) )

If then else matters! - I5 12600KF, Asus Tuf GT501, Asus Tuf OC 3080, Asus Tuf Gaming H670 Pro, 48GB, Corsair RM850X PSU, SN850 1TB, Arctic Liquid Freezer 280, ASUS RT-AX1800U router


Acties:
  • 0 Henk 'm!

Verwijderd

Werkt deze code ook bij jouw? Deze gebruik ik namelijk:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
if(class_exists("COM")) 
            {
                $wmi = new COM("WinMgmts:\\\\.");
                $cpus = $wmi->InstancesOf("Win32_Processor");
                
                $cpuload = 0;
                $i = 0;
                
                foreach($cpus as $cpu) {
                    $cpuload += $cpu->LoadPercentage;
                    $i++;
                }


                $cpuload = round($cpuload / $i, 2);
                return "$cpuload%";
            }
            else 
            {
                return "";
            }

Acties:
  • 0 Henk 'm!

  • Guillome
  • Registratie: Januari 2001
  • Niet online
Jep die code gebruik ik ook, en die werkt dus niet :)

If then else matters! - I5 12600KF, Asus Tuf GT501, Asus Tuf OC 3080, Asus Tuf Gaming H670 Pro, 48GB, Corsair RM850X PSU, SN850 1TB, Arctic Liquid Freezer 280, ASUS RT-AX1800U router

Pagina: 1