[ 
https://issues.apache.org/jira/browse/UIMA-5047?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jerry Cwiklik updated UIMA-5047:
--------------------------------
    Description: 
Currently agent fetches metrics from different sources including /proc file 
system, top, ps, etc. The files found in /proc file system don't have fixed 
structure across Linux platforms causing some metrics to be missing or be 
wrong. Also scrapping lnx commands may not be 100% reliable as well

Change the code to fetch CPU metrics from cgroups. For reporting the CPU, the 
agent needs to look at cgroups cpuacct.stat file.

Agent will collect process CPU usage when 
     a) cgroups  are ON.   
     b) cgroups accounting is configured in cgconfig
     
    Agent publishes -1 ( read: N/A) if cgroups are OFF or accounting is OFF.

Agent will:
     a) fetch the CPU from cgroups accounting as a sum of CPU spent in both 
user and system mode.
          These are separately maintained counts in cgroups.
     b) agent should publish delta (subtracting current from previous reading)
   
Agent will continue to include two CPU values as part of its inventory 
publication: 
    1) Total CPU used by a process from the time it started. This value is used 
by the webserver to show CPU usage when a process terminates.
    2) "Current" CPU used be a process. This is a delta computed as described 
in 2c above. This value is shown by the webserver while the process is running.



  was:
Currently agent fetches metrics from different sources including /proc file 
system, top, ps, etc. The files found in /proc file system don't have fixed 
structure across Linux platforms causing some metrics to be missing or be 
wrong. Also scrapping lnx commands may not be 100% reliable as well

Change the code to fetch CPU metrics from cgroups. For reporting the CPU, the 
agent needs to look at cgroups cpuacct.stat file.

Agent will collect process CPU usage when 
     a) cgroups  are ON.   
     b) cgroups accounting is configured in cgconfig
     
    Agent publishes N/A if cgroups are OFF or accounting is OFF.

Agent will:
     a) fetch the CPU from cgroups accounting as a sum of CPU spent in both 
user and system mode.
          These are separately maintained counts in cgroups.
     b) agent should publish delta (subtracting current from previous reading)
   
Agent will continue to include two CPU values as part of its inventory 
publication: 
    1) Total CPU used by a process from the time it started. This value is used 
by the webserver to show CPU usage when a process terminates.
    2) "Current" CPU used be a process. This is a delta computed as described 
in 2c above. This value is shown by the webserver while the process is running.




> UIMA-DUCC: refactor agent code which gathers node and process metrics
> ---------------------------------------------------------------------
>
>                 Key: UIMA-5047
>                 URL: https://issues.apache.org/jira/browse/UIMA-5047
>             Project: UIMA
>          Issue Type: Improvement
>          Components: DUCC
>            Reporter: Jerry Cwiklik
>            Assignee: Jerry Cwiklik
>             Fix For: 2.2.0-Ducc
>
>
> Currently agent fetches metrics from different sources including /proc file 
> system, top, ps, etc. The files found in /proc file system don't have fixed 
> structure across Linux platforms causing some metrics to be missing or be 
> wrong. Also scrapping lnx commands may not be 100% reliable as well
> Change the code to fetch CPU metrics from cgroups. For reporting the CPU, the 
> agent needs to look at cgroups cpuacct.stat file.
> Agent will collect process CPU usage when 
>      a) cgroups  are ON.   
>      b) cgroups accounting is configured in cgconfig
>      
>     Agent publishes -1 ( read: N/A) if cgroups are OFF or accounting is OFF.
> Agent will:
>      a) fetch the CPU from cgroups accounting as a sum of CPU spent in both 
> user and system mode.
>           These are separately maintained counts in cgroups.
>      b) agent should publish delta (subtracting current from previous reading)
>    
> Agent will continue to include two CPU values as part of its inventory 
> publication: 
>     1) Total CPU used by a process from the time it started. This value is 
> used by the webserver to show CPU usage when a process terminates.
>     2) "Current" CPU used be a process. This is a delta computed as described 
> in 2c above. This value is shown by the webserver while the process is 
> running.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to