[python-win32] Win32pdhutil - GetFormattedCounterValue while
running python thu IIS
sebastien Pastor
spastor at center.com
Mon Mar 29 07:27:33 EST 2004
Thomas a real big thanx for pointing me into the right direction:
I used your code that gave a me an access denied message while trying to
access the "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows
NT\CurrentVersion\Perflib" key (apparently used to find out which
language to expect)
So i ll gave read permission on this key to IUSR user and now it is
working like a charm.
U really saved my day ! Merci ! :-)
Cheers
Seb
Thomas HERVE wrote:
>>sebastien Pastor <spastor at center.com>
>>
>>Thanx Thomas,
>>
>>
>
>You're welcome.
>
>
>
>>Thanx for the link, it does help already !
>>Here is the code i have been using
>>
>>"import win32pdhutil
>>nbConnections=win32pdhutil.GetPerformanceAttributes("Web Service",
>>"Current Connections", instance="_Total")
>>"
>>quite straightforward really...
>>
>>
>
>Yes, not much to say about that.
>
>
>
>>Since then i have been doing this as a test :
>>
>>query = win32pdhquery.Query(["\\Memory\\Available Bytes"])
>>print "here is the query Object " + str(query)
>>res=query.rawaddcounter("Memory", "Available Bytes",machine="127.0.0.1")
>>print res
>>print query.collectdata()
>>
>>
>
>Well, my way to do this.
><code>
>MEMORY = "Memory"
>COMMBYTES = "Committed Bytes"
>memory = win32pdhutil.find_pdh_counter_localized_name(MEMORY)
>commbytes = win32pdhutil.find_pdh_counter_localized_name(COMMBYTES)
>
>path_comm = win32pdh.MakeCounterPath((None, memory, None, None, -1,
>commbytes))
>
>base = win32pdh.OpenQuery()
>count_comm = win32pdh.AddCounter(self.base, self.path_comm)
>
># We query a first time to initialise counter
>win32pdh.CollectQueryData(self.base)
>
># 100 Ms of sleep to be sure getLoad won't be called too fast
>time.sleep(0.1)
># Second query to fetch results
>win32pdh.CollectQueryData(base)
># Get results
>count_format = win32pdh.PDH_FMT_LONG
>
>m_comm = win32pdh.GetFormattedCounterValue(count_comm, count_format)[1]
>
></code>
>
>If you have an error you can see where it is more clearly.
>
>
>
>>In order to try to understand where i am failing ... but so far no much
>>of success . For instance when i run locally those lines i can see "Here
>>is the query Object <win32pdhquery.Query instance at 0x00811480> but
>>when i call the script from my web browser i have "Here is the query
>>Object " then nothing afterwards ... does it mean my object is not
>>created ?
>>
>>
>
>Probably. You may have the error in IIS logs.
>
>
>
>>How can i access the object status and eventually the reason
>>of creation failure ? Moreover, i have added the machine parameter just
>>in case the code would get confused when ran from IIS .. but no
>>improvement
>>
>>
>
>Well obviously it's an IIS problem. Are you sure you can access this with
>cgi ?
>What are your windows and IIS version ?
>Sorry but I can't help you anymore on this...
>
>
>
>>Seb
>>
>>
>
>
>
More information about the Python-win32
mailing list