How can I track/monitor an application and system resources.

Discussion in 'Python' started by richard_l@latter.demon.co.uk, Feb 22, 2007.

  1. Guest

    Hello All,

    I'm a newbie to Python!

    I am trying to develop a program that monitors the performance of an
    application. The kind of information I am interested in is the CPU/
    Process/Thread and memory performance. Specifically, I would like to
    track the following

    CPU usage
    Used Memory on Phone
    Free Memory on Phone
    Number of Processes running
    Number of threads running
    Number of Filehandles currently open
    Memory used by a process/thread
    Process/Thread CPU activity.

    All this under Windows

    Can anyone help me, or direct me to the appriopriate API's so I can
    get the above information?

    Does anyone have any other sugestions on what else I could monitor for
    a running application?

    Does anyone have any example code they can direct me to?

    Many thanks in advance,


    Richard
     
    , Feb 22, 2007
    #1
    1. Advertising

  2. Jordan Guest

    On Feb 22, 11:48 am, ""
    <> wrote:
    > Hello All,
    >
    > I'm a newbie to Python!
    >
    > I am trying to develop a program that monitors the performance of an
    > application. The kind of information I am interested in is the CPU/
    > Process/Thread and memory performance. Specifically, I would like to
    > track the following
    >
    > CPU usage
    > Used Memory on Phone
    > Free Memory on Phone
    > Number of Processes running
    > Number of threads running
    > Number of Filehandles currently open
    > Memory used by a process/thread
    > Process/Thread CPU activity.
    >
    > All this under Windows
    >
    > Can anyone help me, or direct me to the appriopriate API's so I can
    > get the above information?
    >
    > Does anyone have any other sugestions on what else I could monitor for
    > a running application?
    >
    > Does anyone have any example code they can direct me to?
    >
    > Many thanks in advance,
    >
    > Richard


    You will definitely want to check out pywin32api, because it is the
    best (and most powerful) way to interact with windows through python.
    Also, if you know any c++, you might search for taskmanager extensions
    on codeproject.com or look at the msdn on taskmanager to see how it
    gets all of its information (which is essentially what you want -- a
    taskmanager). Either way you'll almost defitely need pywin32, so look
    there first.

    Cheers,
    Jordan
     
    Jordan, Feb 22, 2007
    #2
    1. Advertising

  3. Tim Golden Guest

    wrote:
    > Hello All,
    >
    > I'm a newbie to Python!
    >
    > I am trying to develop a program that monitors the performance of an
    > application. The kind of information I am interested in is the CPU/
    > Process/Thread and memory performance. Specifically, I would like to
    > track the following
    >
    > CPU usage
    > Used Memory on Phone
    > Free Memory on Phone
    > Number of Processes running
    > Number of threads running
    > Number of Filehandles currently open
    > Memory used by a process/thread
    > Process/Thread CPU activity.
    >
    > All this under Windows


    Not sure about the "... on Phone" bit. Assuming you're
    on a supported platform, sounds like you want to look
    at the WMI stuff, in particular Win32_PerfFormattedData[1].
    There are examples around the web, usually in VBS style.
    They're easy enough to translate into Python, either
    using the win32com module[2] directly, or using my WMI
    helper module[3].

    [1] http://msdn2.microsoft.com/en-us/library/aa394253.aspx
    [2] http://pywin32.sf.net
    [3] http://timgolden.me.uk/python/wmi.html

    TJG
     
    Tim Golden, Feb 22, 2007
    #3
  4. Guest

    Hello,

    Many thanks for your advice so far!

    The phone reference is actually because the target device is WM 5.0.
    I've found a python port Pyce that will run on this platform. We have
    a target application that runs on this platform which we would like to
    develop some automated tests for. The application is written in VC++
    and we're using python to stress test it!

    Many thanks again!

    R.

    On 22 Feb, 20:07, Tim Golden <> wrote:
    > wrote:
    > > Hello All,

    >
    > > I'm a newbie to Python!

    >
    > > I am trying to develop a program that monitors the performance of an
    > > application. The kind of information I am interested in is the CPU/
    > > Process/Thread and memory performance. Specifically, I would like to
    > > track the following

    >
    > > CPU usage
    > > Used Memory on Phone
    > > Free Memory on Phone
    > > Number of Processes running
    > > Number of threads running
    > > Number of Filehandles currently open
    > > Memory used by a process/thread
    > > Process/Thread CPU activity.

    >
    > > All this under Windows

    >
    > Not sure about the "... on Phone" bit. Assuming you're
    > on a supported platform, sounds like you want to look
    > at the WMI stuff, in particular Win32_PerfFormattedData[1].
    > There are examples around the web, usually in VBS style.
    > They're easy enough to translate into Python, either
    > using the win32com module[2] directly, or using my WMI
    > helper module[3].
    >
    > [1]http://msdn2.microsoft.com/en-us/library/aa394253.aspx
    > [2]http://pywin32.sf.net
    > [3]http://timgolden.me.uk/python/wmi.html
    >
    > TJG- Hide quoted text -
    >
    > - Show quoted text -
     
    , Feb 23, 2007
    #4
  5. Tim Golden Guest

    wrote:
    > The phone reference is actually because the target device is WM 5.0.
    > I've found a python port Pyce that will run on this platform. We have
    > a target application that runs on this platform which we would like to
    > develop some automated tests for. The application is written in VC++
    > and we're using python to stress test it!


    You'll have to investigate a bit to see what APIs are
    available for the platform. I'm afraid I've no experience
    with portable devices, but some of my colleagues who've
    done embedded database work on GPRS scanners tell me that
    the API is quite cut-back.

    Apart from WMI -- which could well not be there -- there
    are also the Performance APIs which are exposed by pywin32
    in the win32pdh module. Again, though, you'd have to check
    if they're supported.

    TJG
     
    Tim Golden, Feb 23, 2007
    #5
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Ravi Ambros Wallau
    Replies:
    2
    Views:
    3,989
    Ravi Ambros Wallau
    Jan 13, 2006
  2. GHUM
    Replies:
    0
    Views:
    272
  3. Russell E. Owen
    Replies:
    0
    Views:
    736
    Russell E. Owen
    Sep 8, 2006
  4. ScottZ
    Replies:
    2
    Views:
    409
    Jorgen Grahn
    Nov 2, 2008
  5. Danny Chok
    Replies:
    3
    Views:
    230
    Tom Kaminski [MVP]
    Oct 8, 2003
Loading...

Share This Page